public function detail($id)
 {
     if (Gate::denies('report.pertanggal.penjualan.detail')) {
         return view(config('app.template') . '.error.403');
     }
     $order = Order::find($id);
     if ($order->state == 'Closed') {
         $order->load('tax', 'bayarBank', 'bayar', 'place.place.kategori');
         $orderDetail = OrderDetail::join('produks', 'order_details.produk_id', '=', 'produks.id')->leftJoin('order_detail_returns', 'order_details.id', '=', 'order_detail_returns.order_detail_id')->join('orders', 'order_details.order_id', '=', 'orders.id')->where('orders.id', $id)->select(['produks.nama', 'order_details.harga_jual', DB::raw("(order_details.qty - ifnull(order_detail_returns.qty, 0)) as qty"), DB::raw("(order_details.harga_jual * (order_details.qty - ifnull(order_detail_returns.qty, 0))) as subtotal")])->groupBy('produks.id')->get();
         $orderPlaces = $order->place;
     } else {
         $order->load('merge.orderRef');
     }
     $data = ['order' => $order, 'orderDetail' => isset($orderDetail) ? $orderDetail : [], 'orderPlaces' => isset($orderPlaces) ? $orderPlaces : []];
     return view(config('app.template') . '.report.pertanggal-detail', $data);
 }
 public function pertanggalReturnDetail(Request $request)
 {
     $orderDetail = OrderDetail::join('produks', 'order_details.produk_id', '=', 'produks.id')->leftJoin('order_detail_returns', 'order_details.id', '=', 'order_detail_returns.order_detail_id')->where('order_id', $request->get('id'))->whereNotNull('order_detail_returns.id')->select(['produks.nama', DB::raw('order_detail_returns.qty as qty_return')])->get();
     $data = ['orderDetail' => $orderDetail, 'order' => Order::find($request->get('id'))];
     return view(config('app.template') . '.order.return-pertanggal-detail', $data);
 }
Ejemplo n.º 3
0
 protected static function _penjualan($tanggal1, $tanggal2)
 {
     return \App\OrderDetail::join(DB::raw("(SELECT produks.`id`, produks.`nama`\n                FROM produks LEFT JOIN produk_details ON produks.`id` = produk_details.`produk_id`\n                WHERE produk_details.`id` IS NULL GROUP BY produks.`id`)temp_produk"), 'order_details.produk_id', '=', 'temp_produk.id')->leftJoin('order_detail_returns', 'order_details.id', '=', 'order_detail_returns.order_detail_id')->join('orders', 'order_details.order_id', '=', 'orders.id')->whereBetween('orders.tanggal', [$tanggal1, $tanggal2])->groupBy('temp_produk.id')->select(['temp_produk.id', 'temp_produk.nama', DB::raw('SUM(order_details.qty - ifnull(order_detail_returns.qty, 0))qty')])->get()->toArray();
 }