Advertisement
Guest User

dashboard

a guest
Jul 24th, 2019
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.00 KB | None | 0 0
  1. // Transaction
  2.         $data["jukir_sum_transaction_payment"] = Cache::remember('dashboard-jukir-sum-today-transaction-payment', 10, function () use ($date) {
  3.             return TransactionDetail::where("end_date", $date)->where('payment_type', '=', 4)->count();
  4.         });
  5.  
  6.         $data["jukir_sum_transaction_payment_month"] = Cache::remember('dashboard-jukir-sum-month-transaction-payment', 10, function () use ($month) {
  7.             return TransactionDetail::where("end_date", "LIKE", $month."%")->where('payment_type', '=', 4)->count();
  8.         });
  9.  
  10.         $data["jukir_sum_transaction_payment_last_month"] = Cache::remember('dashboard-jukir-sum-last-month-transaction-payment', 3600, function () use ($month2) {
  11.             return TransactionDetail::where("end_date", "LIKE", $month2."%")->where('payment_type', '=', 4)->count();
  12.         });
  13.  
  14.         // Revenue
  15.         $data["jukir_sum_revenue_payment"] = Cache::remember('dashboard-jukir-sum-rev-today-transaction-payment', 10, function () use ($date) {
  16.             $total = TransactionDetail::select(DB::raw("sum(total) AS total"))->where("end_date", "=", $date)->where('payment_type', '=', 4)->first();
  17.  
  18.             return @$total->total;
  19.         });
  20.  
  21.         $data["jukir_sum_revenue_payment_month"] = Cache::remember('dashboard-jukir-sum-rev-month-transaction-payment', 10, function () use ($month) {
  22.             return TransactionDetail::select(DB::raw("sum(total)AS total"))->where("end_date", "like", $month. "%")->where('payment_type', '=', 4)->first()->total;
  23.         });
  24.  
  25.         $data["jukir_sum_revenue_payment_last_month"] = Cache::remember('dashboard-jukir-sum-rev-last-month-transaction-payment', 10, function () use ($month2) {
  26.             return TransactionDetail::select(DB::raw("sum(total)AS total"))->where("end_date", "like", $month2. "%")->first()->total;
  27.         });
  28.  
  29.  
  30. // Revenue Control
  31.     public function getPerHari(){
  32.         $date = date("Y-m-d");
  33.         $month = date("Y-m");
  34.         $month2 = date("Y-m", strtotime("previous month"));
  35.         $data1 = Cache::remember("Cp_data_1", $this->minutes, function() use ($month){
  36.             return DB::table("tb_transaction")
  37.                 ->join('tb_transaction_detail', 'tb_transaction_detail.transaction_id', '=', 'tb_transaction.id')
  38.                 ->where('tb_transaction_detail.payment_type', '=', 4)
  39.                 ->where("tb_transaction.date_transaction", "LIKE", $month."%")
  40.                 ->groupBy("tb_transaction.date_transaction")
  41.                 ->select(DB::raw("SUM(tb_transaction.amount) as jumlah"), "tb_transaction.date_transaction as end_date")
  42.                 ->get();
  43.         });
  44.  
  45.         $data2 = Cache::remember("Cp_data_2", $this->minutes, function() use ($month2){
  46.             return DB::table("tb_transaction")
  47.                 ->join('tb_transaction_detail', 'tb_transaction_detail.transaction_id', '=', 'tb_transaction.id')
  48.                 ->where('tb_transaction_detail.payment_type', '=', 4)
  49.                 ->where("tb_transaction.date_transaction", "LIKE", $month2."%")
  50.                 ->groupBy("tb_transaction.date_transaction")
  51.                 ->select(DB::raw("SUM(tb_transaction.amount) as jumlah"), "tb_transaction.date_transaction as end_date")
  52.                 ->get();
  53.         });
  54.  
  55.         $re = array();
  56.         $tmp = "";
  57.  
  58.         foreach ($data2 as $ke) {
  59.             foreach ($data1 as $key) {
  60.                 $tmp = null;
  61.                 //samain tanggal
  62.                 if ($this->getDate($key->end_date) == $this->getDate($ke->end_date)) {
  63.                     //masukan kedalam this_month
  64.                     $tmp = $key->jumlah;
  65.                     break;
  66.                 }
  67.             }
  68.  
  69.             //buat json baru
  70.             $re[] =[
  71.                 "date" => $ke->end_date,
  72.                 "this_month" => $tmp,
  73.                 "prev_month" => $ke->jumlah,
  74.             ];
  75.         }
  76.  
  77.         return json_encode($re);
  78.     }
  79.  
  80.     private function getDate($D){
  81.         $aD = explode("-",$D);
  82.         return $aD[2];
  83.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement