Hallo! Selamat Datang di Marketplace produk digital, Freelancer terbaik di indonesia (68835 Members, 786 Products, 5386 Topic, 13072 Comments)

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

Dibuat
Login Terakhir 1 Tahun lalu,
Telah Dilihat 1530 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