Goldtuna
← Back to list

Gold Tuna: Spring Dining near Seokchon Lake Cherry Blossom Path

Spring has quietly found its way inside Goldtuna.

Opening the cupboards, gripping the knife, and preparing the tuna—in every small movement, the season seeps into my fingertips.

Though the days have grown warmer, the kitchen maintains its disciplined temperature.

Yet, even in that focus, I begin my day with a heart as soft as the spring air.

The view of Lotte World Tower and Seokchon Lake from our doorstep.

The cherry blossoms at the lake are in full bloom.

Day by day, the streets brighten, and a sense of renewal spreads across people's faces.

In the evenings, more guests arrive after walking along the blossom-lined paths.

There is a peculiar sense of leisure that rests upon those who have just come from the lakeside.

It is a fleeting, beautiful time that brings a quiet joy to our dining room.

The petals are scattered beautifully. It is a wonderful time for a spring outing.

Why the same tuna feels softer in the spring.

We serve tuna with the same consistent quality and temperature, yet it looks subtly different as the seasons turn.

Some guests even tell me the mouthfeel seems more delicate.

In the end, I believe flavor is something the heart accepts long before the palate does.

The recently opened Seokchon Lake Gallery is located right in front of us.

A time when emotion finds its way to the knife's edge.

With every piece I carve, there is a sense of deeper care and a warmer intention.

I find my hands becoming more delicate, almost instinctively.

Perhaps this is what it means for the energy of a season to transfer from the artisan's hand to the food.

The crowds were truly unexpected—so many people enjoying the day.

A plate prepared to capture the essence of spring.

This spring, we have placed a single yellow freesia on each table at Goldtuna.

"We have been waiting for you." "It is a pleasure to see you."

Rather than saying these words, we let the flowers speak.

We fill our plates with the spirit of the season, inviting you to taste spring in every bite.

The elegance of the tuna never ceases to amaze me, even after all these years.

For anniversaries, quiet moments, and everyday leisure.

It is a season that is wonderful in company, and just as fulfilling in solitude.

You are welcome to visit without any particular reason.

There are days that are complete simply as they are.

A beautiful capture of the season gifted by a dear acquaintance.

Goldtuna aspires to be a place that lingers in the heart.

While taste is our foundation, we hope the moments shared here stay with you for a long time.

We strive to provide a meal where the memory outlasts the photograph, dedicating ourselves to every detail from our same place every day.

Returning to the craft—truly, this tuna is a work of art.

[Goldtuna Bangi & Sinsa]

Spring is at its height.

We have prepared a sensory journey just for you.

Our doors are always open.

On a clear day, please stop by to experience the warmth of the season.

Bangi and Sinsa branches offer you the gift of spring.

Goldtuna Operating Hours

Lunch

11:30 Open ~ 15:00 Closing (Last order at 13:30)

Dinner

16:00 ~ 23:00 / Dinner Last order at 22:00

Course Guide

1. Tuna Porridge → 2. Tuna Salad → 3. Fish Balls → 4. Grilled Mushrooms → 5. Main Tuna Sashimi → 6. Two-piece Sushi Set → 7. Special Tuna Service → 8. Monkfish Liver (Ankimo) → 9. Grilled Black Cod → 10. Beef Tteokgalbi → 11. Tuna Karaage → 12. Creamy Shrimp Tempura → 13. Udon → 14. Hand Roll → 15. Ice Cream Dessert

Reservations, Directions, Parking

Goldtuna Bangi

Reservations: 010-5468-0484

Directions: 4 min from Songpanaru Station Exit 2, 10 min from Jamsil Station Exit 8

Parking: Valet service available at the entrance.

Goldtuna Sinsa

Reservations: 010-5478-0484

Directions: 10 min from Sinsa Station Exit 5, 10 min from Apgujeong Station Exit 5

Parking: Please call upon arrival. A valet attendant will assist you shortly.

[filepath]application/controllers/admin/Pengembalian.php [code]load->model('m_peminjaman'); $this->load->model('m_pengembalian'); $this->load->model('m_buku'); if ($this->session->userdata('level') != 'admin' && $this->session->userdata('level') != 'petugas') { redirect('login'); } } public function index() { $data['peminjaman'] = $this->m_pengembalian->get_all_pengembalian(); $data['title'] = 'Pengembalian'; $this->load->view('admin/layout/header', $data); $this->load->view('admin/layout/sidebar', $data); $this->load->view('admin/pengembalian/index', $data); $this->load->view('admin/layout/footer'); } public function add() { $this->form_validation->set_rules('id_peminjaman', 'ID Peminjaman', 'required'); $this->form_validation->set_rules('tgl_kembali', 'Tanggal Kembali', 'required'); if ($this->form_validation->run() == FALSE) { $data['title'] = 'Tambah Pengembalian'; $data['peminjaman'] = $this->m_pengembalian->get_all_peminjaman_aktif(); $this->load->view('admin/layout/header', $data); $this->load->view('admin/layout/sidebar', $data); $this->load->view('admin/pengembalian/add', $data); $this->load->view('admin/layout/footer'); } else { $id_peminjaman = $this->input->post('id_peminjaman'); $tgl_kembali = $this->input->post('tgl_kembali'); $peminjaman = $this->m_peminjaman->get_peminjaman_by_id($id_peminjaman); $tgl_pinjam = $peminjaman->tgl_pinjam; $tgl_harus_kembali = date('Y-m-d', strtotime($tgl_pinjam . ' + 7 days')); $denda = 0; if ($tgl_kembali > $tgl_harus_kembali) { $selisih = strtotime($tgl_kembali) - strtotime($tgl_harus_kembali); $hari = $selisih / (60 * 60 * 24); $denda = $hari * 1000; } $data = array( 'id_peminjaman' => $id_peminjaman, 'tgl_kembali' => $tgl_kembali, 'denda' => $denda, 'is_active' => 1 ); $this->m_pengembalian->insert_pengembalian($data); $this->m_peminjaman->update_peminjaman($id_peminjaman, array('is_active' => 0)); // update stok buku $buku_pinjam = $this->m_peminjaman->get_buku_peminjaman($id_peminjaman); foreach ($buku_pinjam as $b) { $buku = $this->m_buku->get_buku_by_id($b->id_buku); $stok = $buku->stok + 1; $this->m_buku->update_buku($b->id_buku, array('stok' => $stok)); } $this->session->set_flashdata('success', 'Data pengembalian berhasil ditambahkan'); redirect('admin/pengembalian'); } } public function detail($id) { $data['peminjaman'] = $this->m_peminjaman->get_peminjaman_by_id($id); $data['buku_pinjam'] = $this->m_peminjaman->get_buku_peminjaman($id); $data['pengembalian'] = $this->m_pengembalian->get_pengembalian_by_id_peminjaman($id); $data['title'] = 'Detail Pengembalian'; $this->load->view('admin/layout/header', $data); $this->load->view('admin/layout/sidebar', $data); $this->load->view('admin/pengembalian/detail', $data); $this->load->view('admin/layout/footer'); } public function delete($id) { $pengembalian = $this->m_pengembalian->get_pengembalian_by_id($id); $id_peminjaman = $pengembalian->id_peminjaman; $this->m_pengembalian->update_pengembalian($id, array('is_active' => 0)); $this->m_peminjaman->update_peminjaman($id_peminjaman, array('is_active' => 1)); // update stok buku $buku_pinjam = $this->m_peminjaman->get_buku_peminjaman($id_peminjaman); foreach ($buku_pinjam as $b) { $buku = $this->m_buku->get_buku_by_id($b->id_buku); $stok = $buku->stok - 1; $this->m_buku->update_buku($b->id_buku, array('stok' => $stok)); } $this->session->set_flashdata('success', 'Data pengembalian berhasil dihapus'); redirect('admin/pengembalian'); } public function search_peminjaman() { $id_peminjaman = $this->input->get('id_peminjaman'); $peminjaman = $this->m_peminjaman->get_peminjaman_by_id($id_peminjaman); $buku_pinjam = $this->m_peminjaman->get_buku_peminjaman($id_peminjaman); if ($peminjaman) { $tgl_pinjam = $peminjaman->tgl_pinjam; $tgl_harus_kembali = date('Y-m-d', strtotime($tgl_pinjam . ' + 7 days')); $data = array( 'status' => true, 'nama_peminjam' => $peminjaman->nama_peminjam, 'tgl_pinjam' => $tgl_pinjam, 'tgl_harus_kembali' => $tgl_harus_kembali, 'buku_pinjam' => $buku_pinjam ); } else { $data = array( 'status' => false, 'message' => 'Data peminjaman tidak ditemukan' ); } echo json_encode($data); } public function check_denda() { $id_peminjaman = $this->input->get('id_peminjaman'); $tgl_kembali = $this->input->get('tgl_kembali'); $peminjaman = $this->m_peminjaman->get_peminjaman_by_id($id_peminjaman); $tgl_pinjam = $peminjaman->tgl_pinjam; $tgl_harus_kembali = date('Y-m-d', strtotime($tgl_pinjam . ' + 7 days')); $denda = 0; if ($tgl_kembali > $tgl_harus_kembali) { $selisih = strtotime($tgl_kembali) - strtotime($tgl_harus_kembali); $hari = $selisih / (60 * 60 * 24); $denda = $hari * 1000; } echo json_encode(array('denda' => $denda)); } } [filepath]application/controllers/admin/Peminjaman.php [code]load->model('m_peminjaman'); $this->load->model('m_buku'); if ($this->session->userdata('level') != 'admin' && $this->session->userdata('level') != 'petugas') { redirect('login'); } } public function index() { $data['peminjaman'] = $this->m_peminjaman->get_all_peminjaman(); $data['title'] = 'Peminjaman'; $this->load->view('admin/layout/header', $data); $this->load->view('admin/layout/sidebar', $data); $this->load->view('admin/peminjaman/index', $data); $this->load->view('admin/layout/footer'); } public function add() { $this->form_validation->set_rules('nama_peminjam', 'Nama Peminjam', 'required'); $this->form_validation->set_rules('tgl_pinjam', 'Tanggal Pinjam', 'required'); $this->form_validation->set_rules('buku[]', 'Buku', 'required'); if ($this->form_validation->run() == FALSE) { $data['title'] = 'Tambah Peminjaman'; $data['buku'] = $this->m_buku->get_all_buku_ready(); $this->load->view('admin/layout/header', $data); $this->load->view('admin/layout/sidebar', $data); $this->load->view('admin/peminjaman/add', $data); $this->load->view('admin/layout/footer'); } else { $peminjam_tipe = $this->input->post('tipe_peminjam'); if ($peminjam_tipe == "mahasiswa") { $id_peminjam = $this->input->post('nim'); } else { $id_peminjam = $this->input->post('nama_peminjam'); } $is_valid = $this->m_peminjaman->check_is_valid($id_peminjam, $peminjam_tipe); if (!$is_valid) { $this->session->set_flashdata('error', 'Peminjam masih memiliki peminjaman aktif'); redirect('admin/peminjaman/add'); } $data = array( 'nim' => $this->input->post('nim'), 'nama_peminjam' => $this->input->post('nama_peminjam'), 'tipe_peminjam' => $this->input->post('tipe_peminjam'), 'tipe_identitas' => $this->input->post('tipe_identitas'), 'instansi' => $this->input->post('instansi'), 'no_telp' => $this->input->post('no_telp'), 'tgl_pinjam' => $this->input->post('tgl_pinjam'), 'is_active' => 1 ); $id_peminjaman = $this->m_peminjaman->insert_peminjaman($data); $buku = $this->input->post('buku[]'); foreach ($buku as $b) { $data_buku = array( 'id_peminjaman' => $id_peminjaman, 'id_buku' => $b ); $this->m_peminjaman->insert_buku_peminjaman($data_buku); // update stok buku $buku_stok = $this->m_buku->get_buku_by_id($b); $stok = $buku_stok->stok - 1; $this->m_buku->update_buku($b, array('stok' => $stok)); } $this->session->set_flashdata('success', 'Data peminjaman berhasil ditambahkan'); redirect('admin/peminjaman'); } } public function detail($id) { $data['peminjaman'] = $this->m_peminjaman->get_peminjaman_by_id($id); $data['buku_pinjam'] = $this->m_peminjaman->get_buku_peminjaman($id); $data['title'] = 'Detail Peminjaman'; $this->load->view('admin/layout/header', $data); $this->load->view('admin/layout/sidebar', $data); $this->load->view('admin/peminjaman/detail', $data); $this->load->view('admin/layout/footer'); } public function delete($id) { $this->m_peminjaman->update_peminjaman($id, array('is_active' => 0)); // update stok buku $buku_pinjam = $this->m_peminjaman->get_buku_peminjaman($id); foreach ($buku_pinjam as $b) { $buku = $this->m_buku->get_buku_by_id($b->id_buku); $stok = $buku->stok + 1; $this->m_buku->update_buku($b->id_buku, array('stok' => $stok)); } $this->session->set_flashdata('success', 'Data peminjaman berhasil dihapus'); redirect('admin/peminjaman'); } public function search_mhs() { $nim = $this->input->get('nim'); // load as curl $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => "https://api-akademik.itda.ac.id/api/mhs/" . $nim, CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", CURLOPT_HTTPHEADER => array( "cache-control: no-cache", ), )); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { $data = array( 'status' => false, 'message' => 'Error getting data from ITDA API' ); } else { $res = json_decode($response, true); if ($res['status']) { $data = array( 'status' => true, 'nama' => $res['data']['nama'], 'prodi' => $res['data']['prodi'], 'no_telp' => $res['data']['no_hp'] ); } else { $data = array( 'status' => false, 'message' => 'NIM tidak ditemukan' ); } } echo json_encode($data); } public function check_is_valid() { $id_peminjam = $this->input->get('id_peminjam'); $peminjam_tipe = $this->input->get('peminjam_tipe'); $is_valid = $this->m_peminjaman->check_is_valid($id_peminjam, $peminjam_tipe); if ($is_valid) { $data = array( 'status' => true, 'message' => 'Peminjam valid' ); } else { $data = array( 'status' => false, 'message' => 'Peminjam masih memiliki peminjaman aktif' ); } echo json_encode($data); } } [filepath]application/models/M_peminjaman.php [code]db->select('peminjaman.*'); $this->db->from('peminjaman'); $this->db->where('peminjaman.is_active', 1); $this->db->order_by('peminjaman.id_peminjaman', 'DESC'); return $this->db->get()->result(); } public function get_peminjaman_by_id($id) { $this->db->select('peminjaman.*'); $this->db->from('peminjaman'); $this->db->where('peminjaman.id_peminjaman', $id); return $this->db->get()->row(); } public function get_buku_peminjaman($id) { $this->db->select('buku_peminjaman.*, buku.judul_buku, buku.kode_buku'); $this->db->from('buku_peminjaman'); $this->db->join('buku', 'buku.id_buku = buku_peminjaman.id_buku'); $this->db->where('buku_peminjaman.id_peminjaman', $id); return $this->db->get()->result(); } public function insert_peminjaman($data) { $this->db->insert('peminjaman', $data); return $this->db->insert_id(); } public function insert_buku_peminjaman($data) { $this->db->insert('buku_peminjaman', $data); } public function update_peminjaman($id, $data) { $this->db->where('id_peminjaman', $id); $this->db->update('peminjaman', $data); } public function check_is_valid($id_peminjam, $peminjam_tipe) { $this->db->select('peminjaman.*'); $this->db->from('peminjaman'); if ($peminjam_tipe == "mahasiswa") { $this->db->where('peminjaman.nim', $id_peminjam); } else { $this->db->where('peminjaman.nama_peminjam', $id_peminjam); } $this->db->where('peminjaman.is_active', 1); $query = $this->db->get(); if ($query->num_rows() > 0) { return false; } else { return true; } } } [patch]--- a/application/controllers/admin/Pengembalian.php +++ b/application/controllers/admin/Pengembalian.php @@ -107,10 +107,43 @@ redirect('admin/pengembalian'); } + public function search_mhs() + { + $nim = $this->input->get('nim'); + $peminjaman = $this->m_peminjaman->get_peminjaman_aktif_by_nim($nim); + + if ($peminjaman) { + $data = array( + 'status' => true, + 'data' => $peminjaman + ); + } else { + $data = array( + 'status' => false, + 'message' => 'Mahasiswa tidak memiliki peminjaman aktif' + ); + } + + echo json_encode($data); + } + public function search_peminjaman() { $id_peminjaman = $this->input->get('id_peminjaman'); $peminjaman = $this->m_peminjaman->get_peminjaman_by_id($id_peminjaman); + + if (!$peminjaman) { + echo json_encode(array( + 'status' => false, + 'message' => 'Data peminjaman tidak ditemukan' + )); + return; + } + + if ($peminjaman->is_active == 0) { + $peminjaman = $this->m_peminjaman->get_peminjaman_by_id_is_not_active($id_peminjaman); + } + $buku_pinjam = $this->m_peminjaman->get_buku_peminjaman($id_peminjaman); if ($peminjaman) { [patch]--- a/application/controllers/admin/Peminjaman.php +++ b/application/controllers/admin/Peminjaman.php @@ -48,7 +48,7 @@ $is_valid = $this->m_peminjaman->check_is_valid($id_peminjam, $peminjam_tipe); if (!$is_valid) { - $this->session->set_flashdata('error', 'Peminjam masih memiliki peminjaman aktif'); + $this->session->set_flashdata('error', 'Peminjam masih memiliki peminjaman aktif, Silahkan kembalikan buku terlebih dahulu'); redirect('admin/peminjaman/add'); } [patch]--- a/application/models/M_peminjaman.php +++ b/application/models/M_peminjaman.php @@ -11,6 +11,16 @@ $this->db->where('peminjaman.is_active', 1); $this->db->order_by('peminjaman.id_peminjaman', 'DESC'); return $this->db->get()->result(); + } + + public function get_peminjaman_aktif_by_nim($nim) + { + $this->db->select('peminjaman.*'); + $this->db->from('peminjaman'); + $this->db->where('peminjaman.nim', $nim); + $this->db->where('peminjaman.is_active', 1); + $this->db->order_by('peminjaman.id_peminjaman', 'DESC'); + return $this->db->get()->row(); } public function get_peminjaman_by_id($id) @@ -47,6 +57,14 @@ $this->db->update('peminjaman', $data); } + public function get_peminjaman_by_id_is_not_active($id) + { + $this->db->select('peminjaman.*'); + $this->db->from('peminjaman'); + $this->db->where('peminjaman.id_peminjaman', $id); + return $this->db->get()->row(); + } + public function check_is_valid($id_peminjam, $peminjam_tipe) { $this->db->select('peminjaman.*');