load->model("ModelAuth"); $this->load->model("ModelKonsumsi"); } public function konsumketer_get($id_user, $waktu, $keterangan) { $this->load->model('ModelKonsumsi'); $data_join = $this->ModelKonsumsi->getketer($id_user, $waktu, $keterangan); $id_user = $this->post($data_join['id_user']); $waktu = $this->post($data_join['waktu']); $keterangan = $this->post($data_join['keterangan']); $data = array( 'id_user' => $id_user, 'waktu' => date($waktu), 'keterangan' => $keterangan, ); $message = array( 'status' => 200, 'message' => "Coba Berhasil" ); $this->response(array('response' => $data, 'message' => $message)); } // $this->db->select('*'); // $this->db->from('konsumsi'); // $this->db->join('bahan_makanan', 'konsumsi. = bahan_makanan.'); // //$data = $this->db->get("konsumsi"); // $id_user = $this->get('id_user'); // $waktu = $this->get('waktu'); // $nama_makanan = $this->get('nama_makanan'); // $besaran = $this->get('besaran'); // $id_detail = $this->get('id_detail'); // $id_konsumsi = $this->get('id_konsumsi'); // $id_makanan = $this->get('id_makanan'); // $kuantitas = $this->get('kuantitas'); // $kategori = $this->get('kategori'); // $urt = $this->get('urt'); // $energi = $this->get('energi'); // $karbohidrat = $this->get('karbohidrat'); // $protein = $this->get('protein'); // $lemak = $this->get('lemak'); // $besi = $this->get('besi'); // $vitamina = $this->get('vitamina'); // $vitaminc = $this->get('vitaminc'); // $data = array( // 'id_user' => $id_user, // 'waktu' => $waktu, // 'nama_makanan'=> $nama_makanan, // 'besaran'=> $besaran, // 'id_detail'=> $id_detail, // 'id_konsumsi'=> $id_konsumsi, // 'id_makanan'=> $id_makanan, // 'kuantitas'=> $kuantitas, // 'kategori'=> $kategori, // 'urt'=> $urt, // 'energi'=> $energi, // 'karbohidrat'=> $karbohidrat, // 'protein' => $protein, // 'lemak'=> $lemak, // 'besi' => $besi, // 'vitamina'=> $vitamina, // 'vitaminc'=> $vitaminc, // ); public function joinkonsum($id_user) { $this->db->select('nama_makanan'); $this->db->from('bahan_makanan'); $this->db->join('konsumsi_detail', 'bahan_makanan.id_makanan = konsumsi_detail.id_makanan'); $this->db->join('konsumsi', 'konsumsi_detail.id_konsumsi = konsumsi.idkonsumsi'); $this->db->where('konsumsi.user_id_user', $id_user); // Execute the query and get the result $query = $this->db->get(); // Check if there are rows in the result if ($query->num_rows() > 0) { // Return the result as an array of objects return $query->result(); } else { // Return an empty array if no rows found return array(); } } public function Konsumsi_post() { $id_user = $this->post("id_user"); $total_kalori = $this->post("total_kalori"); $keterangan = $this->post("keterangan"); $kmakanan = $this->post("bahan_makanan_nama_makanan"); // Ambil data dari input "bahan_makanan_nama_makanan" sebagai array $kuantitas = $this->post("kuantitas"); $data = array( 'waktu' => date("Y-m-d"), 'create_on' => date("Y-m-d H:i:s"), 'total_kalori' => $total_kalori, 'keterangan' => $keterangan, 'user_id_user' => $id_user, ); if ($this->db->insert('konsumsi', $data)) { $insert_id = $this->db->insert_id(); // Ubah string JSON menjadi array // $kmakanan = json_decode($kmakanan); // $kuantitas = json_decode($kuantitas); // Iterate through the array of bahan_makanan_nama_makanan and insert them into konsumsi_detail if (count($kmakanan) === count($kuantitas)) { for ($i = 0; $i < count($kmakanan); $i++) { $makanan_id = $kmakanan[$i]; $quantities = $kuantitas[$i]; $data2 = array( 'id_makanan' => $makanan_id, 'kuantitas' => $quantities, 'id_konsumsi' => $insert_id ); $this->db->insert('konsumsi_detail', $data2); } $response = array( 'field' => 'id konsumsi detail', 'message' => 'Data berhasil disimpan.' ); $result = $this->joinkonsum($id_user); $response = array( 'field' => 'id konsumsi', 'message' => 'Bisa kan sekarang' //$makanan_id // Ini akan menjadi makanan_id terakhir dalam loop, periksa apakah itu sesuai dengan kebutuhan Anda. ); } else { $response = array( 'status' => 400, 'message' => 'Jumlah elemen dalam kmakanan dan kuantitas tidak sesuai.' ); } } else { $response = array( 'status' => 500, 'message' => "INTERNAL_SERVER_ERROR" ); } $status_response = array( 'status' => 200, 'message' => "OK" ); $final_response = array("response" => $response, "message" => $status_response); $this->response($final_response); } }