jaber
5 سال پیش توسط jaber مطرح شد
12 پاسخ

پیشنهاد راه حل برای قسمت تیکت های سایت

سلام دوستان من میخوام تو قسمت تیکت های سایت وقتی یه کارشناس در حال پاسخ دادن هست الباقی کارشناس ها نتونن پاسخ بدن به اون تیکت و نشون بده که مثلا کاربر فلان در حال پاسخگویی هست .


ثبت پرسش جدید
mkt
@mkt 5 سال پیش مطرح شد
1

سلام
میشه Id تیکت و Id کارشناس را در سشن قرار داد موقعی که کارشناس تیکت را باز میکنه و از اون استفاده کرد. یا توی جدول هایی که طراحی کردی فیلدی در نظر گرفت. کارهای متفاوتی میشه انجام داد.


jaber
تخصص : برنامه‌نویس
@jabersabzali 5 سال پیش مطرح شد
0

تو جدول اگه فیلدی اضافه کنم اگه یه نفر مرورگر رو ببنده مشکل بر میخوره
حالا راحت ترین راه حل رو بگین


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 5 سال پیش مطرح شد
1

رکورد جدول رو به مدت 5 دقیقه لاک کنید و بعدش از حالت لاک خارج کنید.
یه فیلد به جدول اظافه کنید اگه 1 بود یعنی لاک شده و اگه 0 بود یعنی بازه. به هر کارشناس 5 دقیقه (یا بیشتر) فرصت بدید تا جواب بده و بعد از اون (یا بعد از ثبت جواب) رکورد جدول رو به حالت قبل برگردونید.


jaber
تخصص : برنامه‌نویس
@jabersabzali 5 سال پیش مطرح شد
0

خب بازم شما فک کن کارشناسی که داره پاسخ میده به هر دلیلی صفحش رفرش بشه بعدش باید ۵ دقیقه صبر کنه تا بتونه خودش دوباره جواب بده یا هر زمانی که ما در نظر گرفتیم
به نظرم راه حلی حتما برای این موضوع هست البته استفاده از سوکت ها هم هست ولی خب برا همچین موضوع کوچیکی فک کنم نیاز نباشه
@hesammousavi ممنون میشم اگه کمک کنین


نوید
تخصص : برنامه نویس Go / Django
@navids 5 سال پیش مطرح شد
1

تیکت رو با تایم و user کاربر لاک کن ، در اینصورت مشکلی نخواهی داشت
هر وقت یه کاربر یه تیکتی رو باز کرد تا 5 دقیقه فقط توسط خودش قابل پاسخ خواهد بود
وقتی هم رفرش کرد، اون 5 دقیقه اش تمدید میشه


jaber
تخصص : برنامه‌نویس
@jabersabzali 5 سال پیش مطرح شد
0

دوستان ممنون از جواباتون ولی پیام های قبل رو بخونین آخه بازم نمیشه


علی فرمانی
تخصص : فرانت اند
@farmani 5 سال پیش آپدیت شد
1

@jabersabzali
بیاین با جاوا اسکریبت یه روت رو وقتی پشتیبان تو تکست اکسترای پاسخگویی keyup کرد چک کنید .
حالا تو اون روت بیاین یوزر پشتیبان و تیکت رو بگیرین و تو یه جدول تو دیتابیس ذخیره کنید.
حالا هر پشتیبان دیگه ای بیاد اون تیکتو باز کنه بالاش میتونید تنظیم کنید اگر تو جدول مورد نظر لاگی بود که کمتر از 1 یا 5 دقیقه یا هرچقدر گذشته بود آلارم میزنه که پشتیبان x داره پاسخ میده . بعد این پشتیبانم اگه بیاد به اون الارم نادیده بگیره و پاسخ بفرسته اون پشتیبانی قبلی بعد بیاد ارسال پاسخ رو بزنه میتونید بیاید چک کنید اگر از تاریخی که این پشتیبان اولین keyup رو انجام داد به بعدش پاسخی ارسال شده باشه به این پشتیبان الرت بده یک پاسخ توسط پشتیبان x ارسال شده اگه میخاهید پاسخ شما هم ارسال بشه بله رو بزن ...
این میتونه یه روشش باشه .
روش های زیادی داره .
در نهایت هم میتونید بعد گذشت مثلا 1 ساعت از اخرین پاسخ لاگهای اون تیکتو با یه کرون پاک کنید دیتابیس حجیم نشه . فقط یه لاک که چه کسی پاسخ داده رو تو جدول لاگ اصلی بزارید .
برای ریکوئست هایی که جاوا اسکریپت هی میفرسته نگران نباشید تعداد پشتیبانا زیاد نیست . فشار نمیاد .


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
1

درود
میتونید از یه رابطه چند به چند در لاراول استفاده کنید. هنگامی که کارشناس داره پاسخ میده id کارشناس رو در جدولی attach و پس از پایان کارش detach کنید
موفق باشید


jaber
تخصص : برنامه‌نویس
@jabersabzali 5 سال پیش مطرح شد
0

ممنون اقای براتی اما شما فک کن در حین پاسخ مرورگر رو بست
@ali.bayat


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
1

اصلا مهم نیست.. مرورگر رو ببنده ..

وقتی شما از attach استفاده کنی، در Pivot Table یه رکورد ذخیره میشه و تا هنگامی هم که این رکورد detach نشده.. در واقع کارشناس در حال پاسخ هست


jaber
تخصص : برنامه‌نویس
@jabersabzali 5 سال پیش مطرح شد
0

خب علی اقا دقیقا مشکل من همینه نباید اینجوری باشه شما فک کن atach بشه ولی دیگه deatach نشه اونوقت هیچکس قابل پاسخ نخواهد بود !
باید جوری باشه که وقتی طرف در حال پاسخ باشه کسی نتونه اما اگه از اون صفحه رفت به حالت اول برگرده مثل سوکت که توچت انلاین استفاده میشه باید کار کنه ولی خب نمیخوام از سوکت استفاده کنم
@ali.bayat


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
1

در جاوااسکریپت رویدادهایی هستند که قبل از بسته شدن صفحه اتفاق می‌افتند.
رویدادهای onbeforeunload و onunload در شئ window جاوااسکریپت قابل استفاده هستند:

window.onbeforeunload = function(){
   // Do something
}

و

window.addEventListener("beforeunload", function(e){
   // Do something
}, false);

نسخه jquery هم به این شکل:

$(window).unload(function(){
    // Do Something
});

و jquery نسخه ۳ به بالا:

$(window).on("unload", function(e) {
    // Do Something
});

حال میشه چک کرد... اگر کارشناس به این کاربر attach شده و داره مرورگر رو می‌بنده ==> ما این کارشناس رو detach می‌کنیم...
تنها کاری که لازمه اینه که متغیر ها رو از PHP به محیط جاوااسکریپت انتقال بدید و شرط‌ها رو چک کنید

موفق باشید


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام