Hallo! Selamat Datang di Marketplace produk digital, Freelancer terbaik di indonesia (68414 Members, 793 Products, 5353 Topic, 13045 Comments)

Bagaimana cara membuat notifikasi apalbila barang yang di pesan tidak melebihi stok yang ada.

Dibuat
Login Terakhir 8 Bulan lalu,
Telah Dilihat 1418 Kali
Yoel Simanjuntak Mengatakan : Sultan Account
  1. Assalamualaikum Warahmatullahi Wabarakatuh...
  2. Selamat Pagi, Gan bagaimana cara membuat notif pesanan barang melebihi stok yang ada saat ingin melakukan checkout?
  3.  
  4. function check_out(){
  5.  
  6. date_default_timezone_set('Asia/Jakarta');
  7.  
  8. $inv_bayar = $this->input->post('inv_bayar');
  9. $inv_total = $this->input->post('inv_total');
  10. $inv_no = $this->input->post('inv_no');
  11.  
  12. $kembalian = $inv_bayar - $inv_total;
  13.  
  14. $invoice = array(
  15. 'inv_plg_nama' => $this->session->username,
  16. 'inv_total' => $inv_total,
  17. 'inv_bayar' => $inv_bayar,
  18. 'inv_no' => $inv_no,
  19. 'inv_kembali' => $kembalian,
  20. );
  21.  
  22. if ($invoice) {
  23.  
  24. $this->db->insert('tbl_invoice', $invoice);
  25.  
  26. $id_invoice = $this->db->insert_id();
  27.  
  28. foreach($this->cart->contents() as $item){
  29.  
  30. $data = array(
  31. 'detail_inv_no' => $id_invoice,
  32. 'id_produk' => $item['id'],
  33. 'detail_jumlah' => $item['qty'],
  34. 'detail_harga' => $item['price'],
  35. );
  36.  
  37. $this->db->insert('tbl_detail', $data);
  38.  
  39. $this->cart->destroy();
  40. }
  41.  
  42. redirect('penjualan','refresh');
  43.  
  44. } else {
  45. echo 'Maaf, Pesanan Gagal Di Proses';
  46. }
  47. }
  48.  
  49.  
  50. saya sertakan tabel nya di gambar
Ada 3 File Kiriman :
1. Capture_detail.PNG (65 KB)
2. Capture_invoice.PNG (29 KB)
3. Capture_produk.PNG (41 KB)

Ada 1 Jawaban

Bukhori Muslim
commented on 19 Des 2019 06:41:49
Salah satu jawaban terbaik,..
  1. Assalamualaikum,.. sebelum insert ke keranjang cek dulu stok produk, jadi disini :
  2. foreach($this->cart->contents() as $item){
  3. $cek = $this->db->query("SELECT * FROM produk where id_produk='$item[id]'")->row_array();
  4. if ($cek['stok']>=$item['qty']){
  5. $data = array(
  6. 'detail_inv_no' => $id_invoice,
  7. 'id_produk' => $item['id'],
  8. 'detail_jumlah' => $item['qty'],
  9. 'detail_harga' => $item['price'],
  10. );
  11. $this->db->insert('tbl_detail', $data);
  12. $this->cart->destroy();
  13. }else{
  14. echo "Maaf Stok tidak mencukupi,..";
  15. }
  16. }
Maaf, Untuk Memberikan Komentar Anda Harus Login !!!

Online