Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function store(Request $request){
- try {
- // dd($request);
- $produk = $request->produk;
- $qty = $request->qty;
- $harga = $request->harga;
- $harga_grosir = $request->harga_grosir;
- $jenis_transaksi = $request->jenis_transaksi;
- $jumlah_bayar = $request->jumlah_bayar;
- $customer = $request->customer;
- $diskon = $request->diskon;
- $deposit = $request->deposit;
- $buy = $request->buy;
- $set_jenis_transaksi = $request->set_jenis_transaksi;
- // if($deposit == ''){
- // return response()->json([
- // 'pesan'=>'gagal',
- // // 'data'=>'Kembalian Rp. '.number_format($kembalian,0)
- // 'data'=>'deposit kosong'
- // ]);
- // }else{
- // return response()->json([
- // 'pesan'=>'gagal',
- // // 'data'=>'Kembalian Rp. '.number_format($kembalian,0)
- // 'data'=>'deposit ada'
- // ]);
- // }
- $kembalian = 0;
- // cek total
- $total_nya = 0;
- foreach ($produk as $e => $pd) {
- if($jenis_transaksi[$e] == 1){
- $harganya = $harga[$e];
- // $jenis =
- }elseif ($jenis_transaksi[$e] == 2) {
- $harganya = $harga_grosir[$e];
- }else{
- $harganya = 0;
- }
- $total_nya += (Int)$qty[$e] * (Int)$harganya;
- }
- $total_nya -= $diskon;
- if($jumlah_bayar < $total_nya){
- $kurang_nya = $total_nya - $jumlah_bayar;
- return response()->json([
- 'pesan'=>'gagal',
- // 'data'=>'Kembalian Rp. '.number_format($kembalian,0)
- 'data'=>'uang Kurang Rp. '.number_format($kurang_nya,0)
- ]);
- }
- $cek = \DB::transaction(function()use($produk,$qty,$harga,$harga_grosir,$jenis_transaksi,$jumlah_bayar,$customer,$diskon,$buy,$set_jenis_transaksi){
- $header = Sales::insertGetId([
- 'no_struk'=>'sales-'.rand(),
- 'customer'=>$customer,
- 'diskon'=>$diskon,
- 'jenis'=>'cash',
- 'is_lunas'=>1,
- 'created_at'=>date('Y-m-d H:i:s'),
- 'updated_at'=>date('Y-m-d H:i:s')
- ]);
- foreach ($produk as $e => $pd) {
- if($jenis_transaksi[$e] == 1){
- $harganya = $harga[$e];
- // $jenis =
- }elseif ($jenis_transaksi[$e] == 2) {
- $harganya = $harga_grosir[$e];
- }else{
- $harganya = 0;
- }
- if($set_jenis_transaksi == 'eceran'){
- $harganya = $harga[$e];
- $jenis_transaksi[$e] = 1;
- }elseif ($set_jenis_transaksi == 'grosir') {
- $harganya = $harga_grosir[$e];
- $jenis_transaksi[$e] = 2;
- }elseif ($set_jenis_transaksi == 'free') {
- $harganya = 0;
- $jenis_transaksi[$e] = 3;
- }
- Sales_line::insert([
- 'sales'=>$header,
- 'produk'=>$pd,
- 'buy'=>$buy[$e],
- 'harga'=>$harganya,
- 'jenis_transaksi'=>$jenis_transaksi[$e],
- 'qty'=>$qty[$e],
- 'grand_total'=>(Int)$qty[$e] * (Int)$harganya
- ]);
- $dt = M_produk::find($pd);
- $qty_now = $dt->stock;
- $qty_new = $qty_now - $qty[$e];
- M_produk::where('id',$pd)->update([
- 'stock'=>$qty_new
- ]);
- }
- $sum_total = Sales_line::where('sales',$header)->sum('grand_total');
- $sum_total -= $diskon;
- $kembalian = $jumlah_bayar - $sum_total;
- $total_buy = Sales_line::where('sales',$header)->sum('buy');
- $bersih = $sum_total - $total_buy;
- Sales::where('id',$header)->update([
- 'bersih'=>$bersih,
- 'grand_total'=>$sum_total,
- 'jumlah_bayar'=>$jumlah_bayar,
- 'kembalian'=>$kembalian
- ]);
- // if($jumlah_bayar < $sum_total){
- // return response()->json([
- // 'pesan'=>'gagal',
- // 'data'=>'Uang Kurang'
- // ]);
- // }
- // \Session::flash('sukses','Kembalian Rp. '.number_format($kembalian,0));
- $data['sum_total'] = $sum_total;
- $data['kembalian'] = $kembalian;
- return $data;
- });
- return response()->json([
- 'pesan'=>'sukses',
- // 'data'=>'Kembalian Rp. '.number_format($kembalian,0)
- 'data'=>'Sukses, Kembalian : Rp. '.number_format($cek['kembalian'])
- ]);
- } catch (\Exception $e) {
- return response()->json([
- 'pesan'=>'gagal',
- 'data'=>$e->getMessage()
- ]);
- }
- // return redirect()->back();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement