Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function print_quotation($id_quotation, $ket = 'belum')
- {
- // Untuk ket 'proses/selesai', gunakan table VQB (view_quotation_barang)
- // dan spesifikasinya pun ambil dari RHB (ruangan_hm_barang), bukan dari tabel BHS (barang_hm_spesifikasi)
- $res = ($ket != 'belum') ? $this->db->query("
- SELECT
- q.judul, q.alamat_proyek, p.no_quo, c.nama_lengkap,
- r.id_ruangan,r.lantai, r.nama_ruangan,
- b.id_barang, b.kode_barang, b.nama_barang, b.model,
- vqb.total_harga_barang,
- rhb.spesifikasi, rhb.jumlah_barang, rhb.satuan_barang,rhb.transportasi, rhb.tukang, rhb.lain_lain, rhb.margin
- FROM quotation q
- JOIN produksi p ON p.id_quotation = q.id_quotation
- JOIN customer c ON c.id_customer = q.id_customer
- JOIN ruangan r ON r.id_quotation = q.id_quotation
- JOIN ruangan_hm_barang rhb ON rhb.id_ruangan = r.id_ruangan
- JOIN barang b ON b.id_barang = rhb.id_barang
- JOIN view_quotation_barang vqb ON
- vqb.id_produksi = p.id_produksi AND
- vqb.id_barang = b.id_barang
- WHERE q.id_quotation = $id_quotation
- ")->result() :
- $this->db->query("
- SELECT
- q.judul, q.alamat_proyek, p.no_quo, c.nama_lengkap,
- r.id_ruangan, r.lantai, r.nama_ruangan,
- b.id_barang, b.kode_barang, b.nama_barang, b.model, bhb.jumlah,
- bh.id_bahan, bh.harga_bahan, bh.satuan,
- bhs.id_spesifikasi, s.nama_spesifikasi,
- rhb.jumlah_barang, rhb.transportasi, rhb.satuan_barang,rhb.tukang,rhb.lain_lain, rhb.margin
- FROM quotation q
- JOIN produksi p ON p.id_quotation = q.id_quotation
- JOIN customer c ON c.id_customer = q.id_customer
- JOIN ruangan r ON r.id_quotation = q.id_quotation
- JOIN ruangan_hm_barang rhb ON rhb.id_ruangan = r.id_ruangan
- JOIN barang_hm_bahan bhb ON bhb.id_barang = rhb.id_barang
- JOIN barang b ON b.id_barang = bhb.id_barang
- JOIN bahan bh ON bh.id_bahan = bhb.id_bahan
- JOIN barang_hm_spesifikasi bhs ON bhs.id_barang = b.id_barang
- JOIN spesifikasi s ON s.id_spesifikasi = bhs.id_spesifikasi
- WHERE q.id_quotation = $id_quotation order by r.lantai ASC
- ")->result(); // GROUP BY bh.id_bahan, b.id_barang, r.id_ruangan
- $data = [];
- foreach ($res as $row) {
- $data['judul'] = $row->judul;
- $data['no_quo'] = $row->no_quo;
- $data['alamat_proyek'] = $row->alamat_proyek;
- $data['nama_lengkap'] = $row->nama_lengkap;
- $data['detail'][$row->id_ruangan]['lantai'] = $row->lantai;
- $data['detail'][$row->id_ruangan]['nama_ruangan'] = $row->nama_ruangan; // ruangan
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['nama_barang'] = $row->nama_barang; // barang
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['kode_barang'] = $row->kode_barang;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['model'] = $row->model;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['jumlah_barang'] = $row->jumlah_barang;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['transportasi'] = $row->transportasi;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['tukang'] = $row->tukang;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['lain_lain'] = $row->lain_lain;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['satuan_barang'] = $row->satuan_barang;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['margin'] = $row->margin;
- if ($ket != 'belum') {
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['spesifikasi'] = $row->spesifikasi;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['total_harga_barang'] = $row->total_harga_barang;
- }
- else {
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['spesifikasi'][$row->id_spesifikasi] = $row->nama_spesifikasi;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['daftar_bahan'][$row->id_bahan]['harga_bahan'] = $row->harga_bahan;
- $data['detail'][$row->id_ruangan]['daftar_barang'][$row->id_barang]['daftar_bahan'][$row->id_bahan]['jumlah'] = $row->jumlah;
- }
- }
- return $data;
- }
Advertisement
Add Comment
Please, Sign In to add comment