Viewing file: DashboardController.php (2.87 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace App\Http\Controllers\Customer;
use App\Http\Controllers\Controller; use Carbon\Carbon; use Illuminate\Support\Facades\Date; use Illuminate\Support\Facades\DB;
class DashboardController extends Controller {
public function index() { $user = auth()->guard('customer')->user(); // $plan=auth('customer')->user()->plan; $data['newMessageCount'] = 0;
$data['inboxCount'] = 0; $data['sentCount'] = 0;
$data['customer_plan'] = auth('customer')->user()->current_plan; $inboxes =[]; $weekDates=[]; foreach (getLastNDays(7) as $day){ $day=Carbon::createFromTimeString(str_replace('"','',$day." 0:00:00")); $weekDates[]= $day->format('m-d-Y'); }
$data['weekDates']=$weekDates; $chatInboxes=[]; foreach (getLastNDays(7) as $day){ $chatInboxes[]=isset($inboxes[trim($day, '"')])?$inboxes[trim($day, '"')]:0; } $data['chart_inbox']=$chatInboxes; $data['todayExpense']= 0; $data['weeklyExpense']= 0; $data['totalExpense']= 0; $inboundResponse = 0; $outboundResponse = 0;
$weeklySent = []; $weeklyReceived = [];
$weeklyResponseArray=[]; foreach (getLastNDays(7) as $day){ $day=trim($day,'"'); if(isset($weeklySent[$day]) && isset($weeklyReceived[$day]) && $weeklyReceived[$day]>0 ){ $weeklyResponseArray[]= round(($weeklyReceived[$day]/$weeklySent[$day] ) * 100, 2); }else{ $weeklyResponseArray[]=0; } } $allInboundResponse = 0; $allOutboundResponse = 0; $todayTotalMessages = 0;
// Failed $totalFailed = 0; $dailyFailed = 0; $weeklyFailed =0; // Delivered $totalDelivered = 0; $dailyDelivered = 0; $weeklyDelivered = 0;
$data['weeklyResponseArray']=$weeklyResponseArray; $data['dailyResponseRate'] = $outboundResponse > 0 && $inboundResponse > 0?formatNumber(($inboundResponse / $outboundResponse) * 100):0; $data['responseRate'] = $allOutboundResponse > 0 && $allInboundResponse > 0?formatNumber(($allInboundResponse / $allOutboundResponse) * 100):0;
$data['deliveryRate'] =$todayTotalMessages > 0 && $dailyDelivered > 0 ? formatNumber(($dailyDelivered * 100) / $todayTotalMessages) : 0;
$data['blockRate'] = $totalFailed > 0 && $totalDelivered > 0 ? formatNumber($totalFailed / $totalDelivered) : 0; $data['dailyBlockRate'] = $dailyFailed > 0 && $dailyDelivered > 0 ? formatNumber($dailyFailed / $dailyDelivered) : 0; $data['weeklyBlockRate'] =$weeklyDelivered > 0 && $weeklyFailed > 0 ? formatNumber($weeklyFailed / $weeklyDelivered) : 0;
$data['remaining_sms']=$plan->available_sms??0;
return view('customer.dashboard', $data); } }
|