public static function sendNumberNextEmail($transaction_number, $diff = null)
 {
     $email = PriorityQueue::email($transaction_number);
     $name = PriorityQueue::name($transaction_number);
     if ($email) {
         $terminal_id = TerminalTransaction::terminalId($transaction_number);
         $business_id = $terminal_id ? Business::getBusinessIdByTerminalId($terminal_id) : 0;
         $business_name = $business_id ? Business::name($business_id) : '';
         $waiting_time = Analytics::getWaitingTime($business_id);
         $estimated_time = Helper::millisecondsToHMSFormat($waiting_time);
         $data = ['name' => $name == null ? null : ' ' . $name, 'priority_number' => PriorityQueue::priorityNumber($transaction_number), 'numbers_ahead' => $diff, 'business_name' => $business_name, 'estimated_time' => $estimated_time];
         Notifier::sendEmail($email, 'emails.process-queue.number-next', 'FeatherQ Message: Your number will be called soon.', $data);
     }
 }