public function pertanggalDetailReturn(Request $request) { if ($request->get('id')) { $id = $request->get('id'); $orderDetail = OrderDetail::with('order', 'detailReturn')->find($id); $data = ['orderDetail' => $orderDetail]; return view(config('app.template') . '.order.pertanggal-detail-return', $data); } else { return view(config('app.template') . '.error.404'); } }
public function bayar(Request $request) { if ($request->get('id')) { $id = $request->get('id'); $order = Order::with(['karyawan', 'bayar.karyawan', 'tax.tax', 'bayarBank.bank', 'place.place', 'customer'])->find($id); $total = $orderDetails = OrderDetail::with('order')->leftJoin('order_detail_returns', 'order_details.id', '=', 'order_detail_returns.order_detail_id')->join('produks', 'order_details.produk_id', '=', 'produks.id')->where('order_details.order_id', $id)->select(['order_details.id', 'order_details.produk_id', 'produks.nama', 'order_details.harga_jual', 'order_details.qty as qty_ori', DB::raw('ifnull(order_detail_returns.qty, 0) as qty_return'), DB::raw('(order_details.qty - ifnull(order_detail_returns.qty, 0))qty'), DB::raw('(order_details.harga_jual * (order_details.qty - ifnull(order_detail_returns.qty, 0)))subtotal')])->get()->sum('subtotal'); foreach ($order->place as $op) { if ($op->harga > 0) { $total += $op->harga; } } $total += $order->bayar->service_cost; $tax_procentage = round($order->tax->procentage); $tax = round($total * ($tax_procentage / 100)); $tax_bayar_procentage = $order->bayarBank != null ? round($order->bayarBank->tax_procentage) : 0; $tax_bayar = round(($total + $tax) * ($tax_bayar_procentage / 100)); $jumlah = round($total + $tax + $tax_bayar); $sisa = round($jumlah - $order->bayar->diskon); $kembali = round($order->bayar->bayar - $sisa); return ['kasir' => $order->bayar->karyawan->nama, 'waiters' => $order->karyawan->nama, 'customer' => $order->customer != null ? $order->customer->nama : null, 'total' => number_format($total, 0, ",", "."), 'tax_pro' => $order->tax->procentage, 'tax' => number_format($tax, 0, ",", "."), 'tax_bayar_pro' => $tax_bayar_procentage, 'tax_bayar' => number_format($tax_bayar, 0, ",", "."), 'jumlah' => number_format($jumlah, 0, ",", "."), 'diskon' => number_format($order->bayar->diskon, 0, ",", "."), 'sisa' => number_format($sisa, 0, ",", "."), 'bayar' => number_format($order->bayar->bayar, 0, ",", "."), 'kembali' => number_format($kembali, 0, ",", ".")]; } else { abort(500); } }