private function generateInvoiceId()
 {
     $invdesc = Expense::orderBy('id', 'DESC')->first();
     if ($invdesc != null) {
         $invDescId = $invdesc->invoice_id;
         $invDescIdNo = substr($invDescId, 8);
         $subinv1 = substr($invDescId, 6);
         $dd = substr($invDescId, 1, 2);
         $mm = substr($invDescId, 3, 2);
         $yy = substr($invDescId, 5, 2);
         //var_dump($invDescId." ".$dd." ".$mm." ".$yy);
         //echo "d1 ".$yy;
         $tz = 'Asia/Dhaka';
         $timestamp = time();
         $dt = new \DateTime("now", new \DateTimeZone($tz));
         //first argument "must" be a string
         $dt->setTimestamp($timestamp);
         //adjust the object to correct timestamp
         $Today = $dt->format('d.m.Y');
         $explodToday = explode(".", $Today);
         $dd2 = $explodToday[0];
         $mm2 = $explodToday[1];
         $yy1 = $explodToday[2];
         $yy2 = substr($yy1, 2);
         //var_dump($dd2." ".$mm2." ".$yy2);
         if ($dd == $dd2 && $yy == $yy2 && $mm == $mm2) {
             $invoiceidd = "E" . $dd2 . $mm2 . $yy2 . "-" . ($invDescIdNo + 1);
             //var_dump($invoiceidd);
             return $invoiceidd;
         } else {
             $invoiceidd = "E" . $dd2 . $mm2 . $yy2 . "-1";
             return $invoiceidd;
         }
     } else {
         $tz = 'Asia/Dhaka';
         $timestamp = time();
         $dt = new \DateTime("now", new \DateTimeZone($tz));
         //first argument "must" be a string
         $dt->setTimestamp($timestamp);
         //adjust the object to correct timestamp
         $Today = $dt->format('d.m.Y');
         $explodToday = explode(".", $Today);
         $mm2 = $explodToday[1];
         $dd2 = $explodToday[0];
         $yy1 = $explodToday[2];
         $yy2 = substr($yy1, 2);
         $invoiceidd = "E" . $dd2 . $mm2 . $yy2 . "-1";
         //var_dump($invoiceidd);
         return $invoiceidd;
     }
 }
 public function index(Request $request)
 {
     //mostrar el total de la caja y el total de gastos
     // $expenses= Expense::whereBetween('created_at',array($request->get('from'),$request->get('to')))->get();
     // $payments= Payment::whereBetween('created_at',array($request->get('from'),$request->get('to')))->get();       //este filtro de fecha seria bueno transladarlo al modelo.
     $expenses_ = Expense::orderBy('created_at', 'DESC');
     // total de todos los gastos
     $payments = Payment::orderBy('created_at', 'DESC');
     // total de todos los ingresos
     $expenses = Expense::filter($request->get('date'));
     $d_expenses = $expenses->sum('value');
     // el total de rango
     $t_payments = $payments->sum('value');
     $t_expenses = $expenses_->sum('value');
     $total = $t_payments - $t_expenses;
     // total de caja
     return view('expenses/list', compact('expenses', 't_payments', 't_expenses', 'total', 'd_expenses'));
 }
 public function showList($period)
 {
     $today = Carbon::today();
     $today_day_week = $today->dayOfWeek;
     $today_day_month = $today->day;
     $today_day_year = $today->dayOfYear;
     $date_today = Carbon::today()->toDateString();
     $date_week = Carbon::today()->subDays($today_day_week)->addDay()->toDateString();
     $date_month = Carbon::today()->subDays($today_day_month)->addDay()->toDateString();
     $date_year = Carbon::today()->subDays($today_day_year)->toDateString();
     if ($period == 'week') {
         $expenses = Expense::orderBy('date', 'DESC')->whereBetween('date', [$date_week, $date_today])->get();
     } elseif ($period == 'month') {
         $expenses = Expense::orderBy('date', 'DESC')->whereBetween('date', [$date_month, $date_today])->get();
     } elseif ($period == 'year') {
         $expenses = Expense::orderBy('date', 'DESC')->whereBetween('date', [$date_year, $date_today])->get();
     } else {
         $expenses = Expense::orderBy('date', 'DESC')->whereBetween('date', [$date_year, $date_today])->get();
     }
     $expensesByBudget = $expenses->groupBy('category_id');
     $categories = Category::where('budget', '>', '0')->get();
     $expensesByBudget = $expensesByBudget->toArray();
     $categories = $categories->groupBy('id')->toArray();
     $budgetsFormat = [];
     foreach ($categories as $category) {
         if (isset($expensesByBudget[$category[0]['id']])) {
             $title = $category[0]['title'];
             $budget = $this->budgetAjust($category[0]['budget'], $period);
             $amount = 0;
             foreach ($expensesByBudget[$category[0]['id']] as $expense) {
                 $amount += $expense['amount'];
             }
             $percent = $this->toPercent($amount, $budget);
             $color = $this->budgetColor($percent);
             array_push($budgetsFormat, ["title" => $title, "budget" => $budget, "amount" => $amount, "percent" => $percent, "color" => $color]);
         }
     }
     $data = ["expenses" => $expenses, "period" => $period, "budgets" => $budgetsFormat, "total" => $expenses->sum('amount')];
     return view('expense.list', $data);
 }
 public function getIndex()
 {
     $expenseAll = Expense::orderBy('id', 'DESC')->paginate(15);
     return view('Expenses.list', compact('expenseAll'));
 }
Example #5
0
 /**
  * Display a listing of the resource.
  *
  * @return Response
  */
 public function index()
 {
     $expenses = Expense::orderBy('id', 'desc')->paginate(10);
     return view('expenses.index', compact('expenses'));
 }
 /**
  * Display a list of all of the expenses
  *
  * @param  Request  $request
  * @return Response
  */
 public function index(Request $request)
 {
     $stores = Store::orderBy('name')->lists('name', 'id');
     $query = Expense::orderBy('purchase_date', 'desc');
     if ($request->store) {
         $query->where('store_id', $request->store);
     }
     if ($request->from_date) {
         $query->where('purchase_date', '>=', date('Y-m-d', strtotime($request->from_date)));
     }
     if ($request->to_date) {
         $query->where('purchase_date', '<=', date('Y-m-d', strtotime($request->to_date)));
     }
     $expenses = $query->get();
     return view('expenses.index', ['expenses' => $expenses, 'stores' => $stores]);
 }