نسبتدادن خودکار جریمههای رانندگی به راننده در ناوگان
برای نسبتدادن خودکار تخلف به راننده، تاریخ و ساعت هر تخلف را از ریز خلافی با بازههای تحویل خودرو تطبیق دهید و حالتهای مرزی را به انسان بسپارید.
تخلف رانندگی را میشود پیش از اینکه به راننده برسد، بهطور خودکار به او نسبت داد، به شرط اینکه تاریخ و ساعت هر تخلف را داشته باشید و بدانید هر خودرو در آن لحظه دست چه کسی بوده. استعلام ریز خلافی دقیقاً همان تاریخ و ساعت را میدهد؛ سمت دیگر معادله، یعنی سوابق تحویل خودرو، باید از خود شما بیاید.
این مقاله برای شرکتهای حملونقل، اجارهی خودرو و اشتراکگذاری خودرو است که میخواهند تسویهٔ جریمه با راننده را خودکار کنند. ابزار دادهای ریز خلافی خودرو است و بقیهاش طراحی فرایند.
مسئلهی واقعی: «این جریمه مال کدام راننده است؟»
مالک خودرو شرکت است، ولی خودرو در طول ماه دست چند راننده میچرخد. جریمه به پلاک میخورد و به اسم مالک ثبت میشود. بدون نسبتدادن، یا شرکت همه را میپردازد یا کسی باید ماهها بعد بهصورت دستی ریز را با دفتر تحویل مقایسه کند. دومی همان کاری است که بیشتر تیمها تا تعداد خودروها بزرگ میشود، رها میکنند.
دو دادهای که باید کنار هم بگذارید
دادهی اول از سرویس: هر تخلف با تاریخ و ساعت، نوع، محل و مبلغ، شماره سریال.
دادهی دوم از سامانهٔ خودتان: برای هر خودرو، فهرست بازههای استفاده: راننده، زمان تحویل و زمان بازگشت.
الگوریتم نسبتدادن سه خط است: برای هر تخلف، بازهای را پیدا کن که زمان تخلف بین شروع و پایانش بیفتد؛ رانندهی آن بازه مسئول نامزد است؛ اگر هیچ بازهای نبود یا چند بازه همپوشان داشت، به بازبینی برو.
js const owner = (v, uses) => uses.filter((u) => u.from <= v.time && v.time <= u.to); // طول 1: نسبت داده شد. 0 یا بیشتر از 1: بازبینی
سه چیزی که این منطق را خراب میکند
زمان تحویل دقیق ثبت نمیشود. اگر در سامانهٔ شما فقط «روز» تحویل ثبت میشود و ساعت نه، تخلفهای روز تحویل مبهماند. راهحل: ثبت ساعت تحویل را اجباری کنید. این تغییر کوچک عملیاتی بیشترین تأثیر را دارد.
ساعت ثبت تخلف و ساعت واقعی کمی فرق دارند. نمیتوانیم دقت ساعت ثبتشده را تضمین کنیم. پس نزدیک مرز تحویل (مثلاً ده تا پانزده دقیقه) را «مرزی» حساب کنید و به انسان بدهید. این آستانه سلیقهٔ من است؛ شما بر اساس نوع کارتان تنظیمش کنید.
تخلف مربوط به بازهٔ ثبتنشده. استفادهٔ ثبتنشدهٔ خودرو (مثلاً برای تعمیر یا جابهجایی داخلی) ثبت نشده است. این را «نامشخص» بنامید، نه مسئولدار. هر خودروی ناوگان باید یک «رانندهی پیشفرض» داشته باشد، مثلاً واحد عملیات.
فرایند پیشنهادی
- شبانه یا هفتگی، برای هر خودرو، استعلام مجموع بگیرید. اگر مبلغ صفر است، تمام.
- برای خودروهای دارای مبلغ، ریز بگیرید.
- تخلفهای جدید (که شماره سریالشان قبلاً ذخیره نشده) را شناسایی کنید.
- به هر تخلف جدید یک رانندهی نامزد نسبت دهید یا آن را مرزی/نامشخص علامت بزنید.
- برای تخلفهای تعیینشده، اعلان به راننده و ثبت در تسویه.
- برای مرزی/نامشخص، بازبینی انسانی.
- نتیجه را با زمان استعلام و نسخهٔ قاعده ذخیره کنید.
مرحله ۱ و ۲ را از هم جدا نگه دارید: مجموع سبکتر است و برای غربال کافی؛ ریز را فقط وقتی بخوانید که لازم است. جزئیات هر دو سرویس در مقایسهی کلی و جزئی هست.
چه کسی پرداخت میکند
دو مدل رایج هست:
- شرکت میپردازد، سپس از راننده کسر میکند. سریعتر و بدهی را زود بسته میکند، ولی نیاز به قرارداد روشن با راننده دارد.
- راننده میپردازد. نیاز به اینکه شناسههای پرداخت را به راننده بدهید. چون ریز برای هر تخلف شناسه جداگانه دارد، میتوانید دقیقاً همان تخلفهای او را نشان دهید و کامل پرداخت کند.
هر مدل را انتخاب کنید، پرداخت خارج از این سرویس است: ما شناسهها را میدهیم و پرداخت از درگاه خودتان یا اپلیکیشن راننده انجام میشود.
اعتراض
اگر راننده معتقد است تخلف مربوط به او نیست یا اشتباه ثبت شده، میتواند اعتراض کند. هر تخلف یک نشانهٔ قابلیت رسیدگی و یک نشانهٔ تصویر دارد؛ این دو را در رابط راننده نشان دهید تا بداند چه تخلفی ارزش پیگیری دارد. اعتراض خودش از مسیر مرجع انجام میشود، نه از این سرویس. راهنمای چه چیزهایی برای اعتراض لازم است در این باره بیشتر توضیح میدهد.
حریم خصوصی و حقوق راننده
این فرایند اطلاعاتی دربارهٔ رفتار رانندگی اشخاص میسازد. بهعنوان یک اصل: فقط به خود راننده و مسئول مستقیمش نشان دهید، مدت نگهداری تعیین کنید و در قرارداد کار بنویسید که خلافی ثبت و پیگیری میشود. ما مشاور حقوقی نیستیم؛ شیوهٔ کسر از حقوق یا دریافت از راننده را با حقوقدان خودتان تنظیم کنید.
سنجش اینکه این فرایند ارزش دارد
پیش از ساختن، یک محاسبهٔ ساده بکنید: چند تخلف در ماه میگیرید و چند ساعت وقت صرف تطبیق دستی میشود؟ اگر عدد اول چند تاست، دست کار کافی است. اگر دهها یا بیشتر، خودکارسازی منطقی است. این را از روی دادهی خودتان بسنجید، نه حدس.
آنچه این روش نمیکند
مسئولیت حقوقی را تعیین نمیکند؛ فقط رانندهی احتمالی را بر اساس زمان نشان میدهد. تصویر تخلف را نمیدهد. رانندهای که خودرو را بدون ثبت به کس دیگری داده، نمیشناسد. و با پلاک بدون مشخصات مالک کار نمیکند: استعلام به کد ملی و موبایل مالک نیاز دارد.
یک مثال فرضی از روز مرزی
فرض کنید خودرویی ساعت ۱۴:۰۰ به راننده الف تحویل داده شده و ساعت ۱۴:۱۰ تخلفی ثبت شده است. فاصله فقط ده دقیقه است. سیستم باید این را مرزی علامت بزند، چون ممکن است ساعت ثبت تخلف با ساعت واقعی کمی فرق داشته باشد یا تحویل با تأخیر ثبت شده باشد. بازبین دفتر تحویل را نگاه میکند، با دو راننده صحبت میکند و تصمیم میگیرد.
این حالتها معمولاً درصد کوچکی از پروندهها هستند، ولی اگر خودکار تصمیم بگیرید، همین درصد کوچک بیشترین اعتراض را میسازد. ریز خلافی خودرو زمان را در سطح دقیقه میدهد؛ اینکه چقدر به آن اعتماد کنید، با قاعدهٔ مرزی شما تعیین میشود.
بازخورد به راننده
اعلان تخلف به راننده را کوتاه و دقیق بنویسید: نوع تخلف، تاریخ و ساعت، محل و مبلغ، و اینکه آیا قابل رسیدگی و دارای تصویر است. به او فرصت دهید ظرف مدتی که شما تعیین میکنید، اعتراض خود را اعلام کند، پیش از آنکه تسویه نهایی شود. این یک رویهٔ منصفانه است و شکایتهای بعدی را کم میکند.
پیشنهاد من
نسبتدادن خودکار تخلف دو چیز میخواهد: تاریخ و ساعت دقیق هر تخلف (که ریز خلافی میدهد) و بازههای تحویل با ساعت (که شما باید داشته باشید). زمانهای مرزی را به انسان بدهید، «نامشخص» را از «مسئولدار» جدا کنید و پرداخت را بیرون از این سرویس حل کنید. اگر فقط یک تغییر در محصولتان میتوانید بدهید، ثبت ساعت تحویل را اجباری کنید.
وبسرویس مرتبط با این راهنما
API خلافی خودرو با جزئیات
ریز تخلفات، تاریخ و مبلغ هر جریمه.
راهنماهای مرتبط
پرسش و تجربه کاربران
اگر این راهنما جوابتان را نداد، همینجا بپرسید. پرسشها را تیمملی ایپیآی پاسخ میدهد و هر نظر پیش از انتشار بررسی میشود.
هنوز پرسشی ثبت نشده، اولین نفر باشید.
