Hallo! Selamat Datang di Marketplace produk digital, Freelancer terbaik di indonesia (69067 Members, 785 Products, 4714 Topic, 13112 Comments)

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

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