function buka_langsung_bayar($idkw) {
		unset($_SESSION[kasir][kunjungan][jasa_cetak]);
		$kon = new Konek;
		//$kon->debug = 1;
		$objResponse = new xajaxResponse;
		//get data pasien
		$sql = "
			SELECT
				k.id as kunjungan_id,
				CONCAT_WS('-', SUBSTRING(p.id, 1,2), SUBSTRING(p.id, 3,2), SUBSTRING(p.id, 5,2), SUBSTRING(p.id, 7,2)) as id_display,
				p.nama as nama,
				p.tgl_lahir as tgl_lahir,
				CONCAT(p.alamat, ' ', IF(p.rt = '','',CONCAT(' RT ', p.rt)), IF(p.rw = '','',CONCAT(' RW ', p.rw)), ', ', des.nama, ', ', kec.nama, ', ', kab.nama) as alamat,
				kk.tgl_daftar as tgl_daftar,
				kk.tgl_periksa as tgl_periksa,
				pel.nama as nama_pelayanan,
				p.sex as jk,
				CONCAT_WS(' - ', kk.cara_bayar, kk.jenis_askes, rper.nama) as cara_bayar,
				kk.nomor as nomor
			FROM
				kunjungan_kamar kk
				JOIN kunjungan k ON (k.id = kk.kunjungan_id)
				JOIN pasien p ON (p.id = k.pasien_id)
				JOIN kamar kmr ON (kmr.id = kk.kamar_id)
				JOIN pelayanan pel ON (pel.id = kmr.pelayanan_id)
				JOIN kunjungan_bayar kb ON (kb.kunjungan_kamar_id = kk.id)
				JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
				JOIN kwitansi kw ON (kw.id = kwd.kwitansi_id)
				JOIN ref_desa des ON (des.id = p.desa_id)
				JOIN ref_kecamatan kec ON (kec.id = des.kecamatan_id)
				JOIN ref_kabupaten kab ON (kab.id = kec.kabupaten_id)
				JOIN ref_propinsi prop ON (prop.id = kab.propinsi_id)
				LEFT JOIN ref_perusahaan rper ON (rper.id = kk.perusahaan_id)
			WHERE
				kw.id = '".$idkw."'
			GROUP BY
				p.id
		";
		//$objResponse->addAssign("debug", "innerHTML", $sql);
		$kon->sql = $sql;
		$kon->execute();
		$data_pasien = $kon->getOne();
		$arr_usia = hitungUmur($data_pasien[tgl_lahir], $data_pasien[tgl_periksa]);
		$data_pasien[usia] = empty($arr_usia[tahun])?"":$arr_usia[tahun] . " thn ";
		$data_pasien[usia] .= empty($arr_usia[bulan])?"":$arr_usia[bulan] . " bln ";
		$data_pasien[usia] .= empty($arr_usia[hari])?"":$arr_usia[hari] . " hr ";
		$objResponse->addClear("modal_lb", "style.display");
		$objResponse->addAssign("lb_id_kunjungan", "value", $data_pasien[kunjungan_id]);
		$objResponse->addAssign("lb_id_kwitansi", "value", $idkw);
		$objResponse->addAssign("lb_no_rm", "innerHTML", $data_pasien[id_display]);
		$objResponse->addAssign("lb_pasien", "innerHTML", $data_pasien[nama]);
		$objResponse->addAssign("lb_sex", "innerHTML", $data_pasien[jk]);
		$objResponse->addAssign("lb_usia", "innerHTML", $data_pasien[usia]);
		$objResponse->addAssign("lb_alamat", "innerHTML", $data_pasien[alamat]);
		$objResponse->addAssign("lb_tgl_daftar", "innerHTML", tanggalIndo($data_pasien[tgl_daftar], 'j F Y'));
		$objResponse->addAssign("lb_cara_bayar", "innerHTML", $data_pasien[cara_bayar]);
		$objResponse->addAssign("lb_nomor", "innerHTML", empty($data_pasien[nomor])?"-":$data_pasien[nomor]);
	
		//BIKIN SESSION UNTUK DICETAK
		$_SESSION[igd][langsung_bayar][data_px] = $data_pasien;

		$tabel = new Table;
		$tabel->cellspacing = "0";
		$tabel->scroll = false;
		$tabel->extra_table = "style=\"width:9cm;\"";
		$tabel->addTh("No", "Jasa", "Biaya");
		$tabel->addExtraTh("style=\"width:0.7cm;\"", "style=\"width:6.5cm;\"", "");
		//get data karcis
		$kon->sql = "
			SELECT
				kb.nama as nama,
				kb.bayar_bhp+kb.bayar_jasa as bayar,
				kb.mampu_bayar_bhp+kb.mampu_bayar_jasa as mampu_bayar,
				kwd.kwitansi_id as kwitansi_id
			FROM
				kunjungan_bayar kb
				JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
				JOIN kunjungan_kamar kk ON (kk.id = kb.kunjungan_kamar_id)
			WHERE
				kb.karcis_id IS NOT NULL
				AND kwd.kwitansi_id = '".$idkw."'
			GROUP BY
				kb.id
			ORDER BY kb.id
		";
		$kon->execute();
		$data_karcis = $kon->getAll();
		if(!empty($data_karcis)) {
			$tabel->addRow("","<b>Karcis</b>","");
			for($i=0;$i<sizeof($data_karcis);$i++) {
				$tabel->addRow(
					($i+1),
					$data_karcis[$i][nama],
					uangIndo($data_karcis[$i][bayar])
				);
				$total += $data_karcis[$i][bayar];
				$sudah_dibayar += $data_karcis[$i][mampu_bayar];
				//belum bayar
				$kurang += $data_karcis[$i][bayar]-$data_karcis[$i][mampu_bayar];
			}
		}

		//get data tindakan
		$kon->sql = "
			SELECT
				kki.nama as nama,
				SUM(kb.bayar_jasa) as bayar,
				SUM(kb.mampu_bayar_jasa) as mampu_bayar,
				kwd.kwitansi_id as kwitansi_id
			FROM
				kunjungan_kamar_icopim kki 
				JOIN kunjungan_bayar kb ON (kb.kunjungan_kamar_icopim_id = kki.id)
				JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
				JOIN kunjungan_kamar kk ON (kk.id = kki.kunjungan_kamar_id)
			WHERE
				kb.icopim_detil_id IS NOT NULL
				AND kwd.kwitansi_id = '".$idkw."'
			GROUP BY
				kki.id
			ORDER BY kki.id
		";
		$kon->execute();
		$data_tindakan = $kon->getAll();
		if(!empty($data_tindakan)) {
			$tabel->addRow("","<b>Tindakan</b>","");
			for($i=0;$i<sizeof($data_tindakan);$i++) {
				$tabel->addRow(
					($i+1),
					$data_tindakan[$i][nama],
					uangIndo($data_tindakan[$i][bayar])
				);
				$total += $data_tindakan[$i][bayar];
				$sudah_dibayar += $data_tindakan[$i][mampu_bayar];
				//belum bayar
				$kurang += $data_tindakan[$i][bayar]-$data_tindakan[$i][mampu_bayar];
			}
		}

		//get data specimen
		$kon->sql = "
			SELECT
				kb.nama as nama,
				kb.bayar_bhp+kb.bayar_jasa as bayar,
				kb.mampu_bayar_bhp+kb.mampu_bayar_jasa as mampu_bayar,
				kwd.kwitansi_id as kwitansi_id
			FROM
				kunjungan_bayar kb
				JOIN lab_kunjungan lk ON (lk.id = kb.lab_kunjungan_id)
				JOIN kunjungan_kamar kk ON (kk.id = lk.kunjungan_kamar_id)
				JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
			WHERE
				kb.lab_specimen_id IS NOT NULL
				AND kwd.kwitansi_id = '".$idkw."'
			GROUP BY
				kb.id
			ORDER BY kb.id
		";
		$kon->execute();
		$data_specimen = $kon->getAll();
		if(!empty($data_specimen)) {
			$tabel->addRow("","<b>Pemeriksaan Specimen</b>","");
			for($i=0;$i<sizeof($data_specimen);$i++) {
				$tabel->addRow(
					($i+1),
					$data_specimen[$i][nama],
					uangIndo($data_specimen[$i][bayar])
				);
				$total += $data_specimen[$i][bayar];
				$sudah_dibayar += $data_specimen[$i][mampu_bayar];
				//belum bayar
				$kurang += $data_specimen[$i][bayar]-$data_specimen[$i][mampu_bayar];
			}
		}

		//get data radio
		$kon->sql = "
			SELECT
				kb.nama as nama,
				kb.bayar_bhp+kb.bayar_jasa as bayar,
				kb.mampu_bayar_bhp+kb.mampu_bayar_jasa as mampu_bayar,
				kwd.kwitansi_id as kwitansi_id
			FROM
				kunjungan_bayar kb
				JOIN radio_kunjungan lk ON (lk.id = kb.lab_kunjungan_id)
				JOIN kunjungan_kamar kk ON (kk.id = lk.kunjungan_kamar_id)
				JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
			WHERE
				kb.radio_specimen_id IS NOT NULL
				AND kwd.kwitansi_id = '".$idkw."'
			GROUP BY
				kb.id
			ORDER BY kb.id
		";
		$kon->execute();
		$data_radio = $kon->getAll();
		if(!empty($data_radio)) {
			$tabel->addRow("","<b>Pemeriksaan Radiologi</b>","");
			for($i=0;$i<sizeof($data_radio);$i++) {
				$tabel->addRow(
					($i+1),
					$data_radio[$i][nama],
					uangIndo($data_radio[$i][bayar])
				);
				$total += $data_radio[$i][bayar];
				$sudah_dibayar += $data_radio[$i][mampu_bayar];
				//belum bayar
				$kurang += $data_radio[$i][bayar]-$data_radio[$i][mampu_bayar];
			}
		}

		//get data bhp
		$kon->sql = "
			SELECT
				kb.nama as nama,
				kb.bayar_bhp as bayar,
				kb.mampu_bayar_bhp as mampu_bayar,
				kwd.kwitansi_id as kwitansi_id
			FROM
				kunjungan_bayar kb
				JOIN kunjungan_kamar kk ON (kk.id = kb.kunjungan_kamar_id)
				JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
			WHERE
				kb.bhp_id IS NOT NULL
				AND kwd.kwitansi_id = '".$idkw."'
			GROUP BY
				kb.id
			ORDER BY kb.id
		";
		$kon->execute();
		$data_bhp = $kon->getAll();
		if(!empty($data_bhp)) {
			$tabel->addRow("","<b>Bahan Habis Pakai</b>","");
			for($i=0;$i<sizeof($data_bhp);$i++) {
				$tabel->addRow(
					($i+1),
					$data_bhp[$i][nama],
					uangIndo($data_bhp[$i][bayar])
				);
				$total += $data_bhp[$i][bayar];
				$sudah_dibayar += $data_bhp[$i][mampu_bayar];
				//belum bayar
				$kurang += $data_bhp[$i][bayar]-$data_bhp[$i][mampu_bayar];
			}
		}

		//get data kendaraan
		$kon->sql = "
			SELECT
				kkd.nama as nama,
				SUM(kb.bayar_bhp+kb.bayar_jasa) as bayar,
				SUM(kb.mampu_bayar_bhp+kb.mampu_bayar_jasa) as mampu_bayar,
				kwd.kwitansi_id as kwitansi_id
			FROM
				kunjungan_kendaraan kkd 
				JOIN kunjungan_bayar kb ON (kb.kunjungan_kendaraan_id = kkd.id)
				JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
				JOIN kunjungan_kamar kk ON (kk.id = kb.kunjungan_kamar_id)
			WHERE
				kwd.kwitansi_id = '".$idkw."'
			GROUP BY
				kkd.id
			ORDER BY kkd.id
		";
		$kon->execute();
		$data_kendaraan = $kon->getAll();
		if(!empty($data_kendaraan)) {
			$tabel->addRow("","<b>Sewa Kendaraan</b>","");
			for($i=0;$i<sizeof($data_kendaraan);$i++) {
				$tabel->addRow(
					($i+1),
					$data_kendaraan[$i][nama],
					uangIndo($data_kendaraan[$i][bayar])
				);
				$total += $data_kendaraan[$i][bayar];
				$sudah_dibayar += $data_kendaraan[$i][mampu_bayar];
				//belum bayar
				$kurang += $data_kendaraan[$i][bayar]-$data_kendaraan[$i][mampu_bayar];
			}
		}

		$tabel->addRow("","<b>Total</b>", uangIndo($total));
		$tabel_jasa = $tabel->build();
		$objResponse->addAssign("lb_list_jasa", "innerHTML", $tabel_jasa);

		$objResponse->addAssign("lb_total_display", "value", uangIndo($total));
		$objResponse->addAssign("lb_total_display", "title", terbilang($total));
		$objResponse->addAssign("lb_sudah_dibayar", "value", $sudah_dibayar);
		$objResponse->addAssign("lb_sudah_dibayar_display", "value", uangIndo($sudah_dibayar));
		$objResponse->addAssign("lb_sudah_dibayar_display", "title", terbilang($sudah_dibayar));
		$objResponse->addAssign("lb_kurang_display", "value", uangIndo($kurang));
		$objResponse->addAssign("lb_kurang", "value", $kurang);
		$objResponse->addAssign("lb_kurang_display", "title", terbilang($kurang));
		$objResponse->addAssign("lb_mampu_bayar", "value", $kurang);
		$objResponse->addAssign("mampu_terbilang", "innerHTML", terbilang($kurang));
		$objResponse->addScriptCall("disable_mainbar", "#E5E6E1");
		$objResponse->addScriptCall("fokus", "lb_mampu_bayar");

		//get data kwitansi :
		$kon->sql = "
			SELECT
				CONCAT_WS('-', kw.tempat_pembayaran, kw.id) as no_kwitansi,
				kw.bayar as mampu_bayar,
				kw.tgl as tgl
			FROM
				kunjungan_bayar kb
				JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
				JOIN kwitansi kw ON (kw.id = kwd.kwitansi_id)
				JOIN kunjungan_kamar kk ON (kk.id = kb.kunjungan_kamar_id)
			WHERE
				kw.id = '".$idkw."'
			GROUP BY
				kw.id
			ORDER BY 
				kw.id
		";
		$kon->execute();
		$data_kw = $kon->getAll();

		if($kurang) {
			//ada yang belum dibayar
			$objResponse->addAssign("lb_simpan", "style.display", "");
		}

		if(!empty($data_kw)) {
			//ada yang sudah dibayar
			for($i=0;$i<sizeof($data_kw);$i++) {
				$kw .= "<br /><input type=\"button\" name=\"lb_cetak\" id=\"lb_cetak\" value=\"Cetak Kwitansi ".$data_kw[$i][no_kwitansi]."\" class=\"inputan\" onclick=\"cetak_kwitansi('".$data_kw[$i][no_kwitansi]."');\" /> <br /> <em>Rp.&nbsp;".uangIndo($data_kw[$i][mampu_bayar])."&nbsp;-&nbsp;".tanggalIndo($data_kw[$i][tgl], "j F Y H:i")."</em><br />";
			}
			$objResponse->addAssign("fieldset_lb_button_kwitansi", "style.display", "");
			$objResponse->addAssign("lb_button_kwitansi", "innerHTML", $kw);
			if(!$kurang) $objResponse->addAssign("lb_simpan", "style.display", "none");
		} else {
			$objResponse->addAssign("fieldset_lb_button_kwitansi", "style.display", "none");
		}

		return $objResponse;
	}
Exemplo n.º 2
0
	function list_data($val) {
		unset($_SESSION[igd][pendapatan]);
		//get data karcis dan BHP
		$objResponse = new xajaxResponse;
		$kon = new Konek;
		$title = "Laporan Pembagian Jasa IRD";
		if($val[jangka_waktu] == "tahun") {
			$q = "AND YEAR(kw.tgl) BETWEEN '".$val[thn_start]."' AND '".$val[thn_end]."'";
			$title .= "\nPeriode " . $val[thn_start] . " - " . $val[thn_end];
		} elseif($val[jangka_waktu] == "bulan") {
			$q = "AND EXTRACT(YEAR_MONTH FROM kw.tgl) BETWEEN '".$val[thn_start].$val[bln_start]."' AND '".$val[thn_end].$val[bln_end]."'";
			$title .= "\nPeriode " . bulanIndo($val[bln_start], "F") . " " . $val[thn_start] . " - " . bulanIndo($val[bln_end], "F") . " " . $val[thn_end];
		} else {
			$q = "AND DATE(kw.tgl) BETWEEN '".$val[thn_start]."-".$val[bln_start]."-".$val[tgl_start]."' AND '".$val[thn_end]."-".$val[bln_end]."-".$val[tgl_end]."'";
			$title .= "\nPeriode " . tanggalIndo($val[thn_start] . "-" . $val[bln_start] . "-" . $val[tgl_start], "j F Y") . " - " . tanggalIndo($val[thn_end] . "-" . $val[bln_end] . "-" . $val[tgl_end], "j F Y");
		}
		$sql = "
			SELECT
				kb.nama as nama,
				hak.nama as nama_hak,
				SUM(ROUND(kb.mampu_bayar_bhp * bhp_p)) as bhp_p,
				SUM(ROUND(kb.mampu_bayar_bhp * bhp_rs_adm)) as bhp_rs_adm,
				SUM(ROUND(kb.mampu_bayar_bhp * bhp_rs_op)) as bhp_rs_op,
				SUM(ROUND(kb.mampu_bayar_jasa * jasa_p)) as jasa_p,
				SUM(ROUND(kb.mampu_bayar_jasa * jasa_rs_adm)) as jasa_rs_adm,
				SUM(ROUND(kb.mampu_bayar_jasa * jasa_rs_sdm)) as jasa_rs_sdm,
				SUM(ROUND(kb.mampu_bayar_jasa * jasa_rs_kembang)) as jasa_rs_kembang,
				SUM(ROUND(kb.mampu_bayar_jasa * jasa_rs_op)) as jasa_rs_op,

				SUM(ROUND(kb.mampu_bayar_jasa * spesialis * netto)) as spesialis,
				SUM(ROUND(kb.mampu_bayar_jasa * spesialis_pendamping * netto)) as spesialis_pendamping,
				SUM(ROUND(kb.mampu_bayar_jasa * perawat_perinatologi * netto)) as perawat_perinatologi,
				SUM(ROUND(kb.mampu_bayar_jasa * dr_umum * netto)) as dr_umum,
				SUM(ROUND(kb.mampu_bayar_jasa * dr_gigi * netto)) as dr_gigi,
				SUM(ROUND(kb.mampu_bayar_jasa * assisten_non_dokter * netto)) as assisten_non_dokter,
				SUM(ROUND(kb.mampu_bayar_jasa * spesialis_anestesi * netto)) as spesialis_anestesi,
				SUM(ROUND(kb.mampu_bayar_jasa * aknest * netto)) as aknest,
				SUM(ROUND(kb.mampu_bayar_jasa * gizi * netto)) as gizi,
				SUM(ROUND(kb.mampu_bayar_jasa * fisioterapi * netto)) as fisioterapi,
				SUM(ROUND(kb.mampu_bayar_jasa * analis_pa * netto)) as analis_pa,
				SUM(ROUND(kb.mampu_bayar_jasa * bidan * netto)) as bidan,
				SUM(ROUND(kb.mampu_bayar_jasa * perawat * netto)) as perawat,
				SUM(ROUND(kb.mampu_bayar_jasa * penunjang * netto)) as penunjang,
				SUM(ROUND(kb.mampu_bayar_jasa * ugp * netto)) as ugp,
				SUM(ROUND(kb.mampu_bayar_jasa * grabaf * netto)) as grabaf,
				SUM(ROUND(kb.mampu_bayar_jasa * zakat * netto)) as zakat,
				SUM(ROUND(pajak * (kb.mampu_bayar_jasa - kb.mampu_bayar_jasa * kb.jasa_p - kb.mampu_bayar_jasa * kb.jasa_rs_op - kb.mampu_bayar_jasa * kb.jasa_rs_kembang - kb.mampu_bayar_jasa * kb.jasa_rs_adm - kb.mampu_bayar_jasa * kb.jasa_rs_sdm))) as pajak,
				SUM(kb.mampu_bayar_bhp+kb.mampu_bayar_jasa) as mampu_bayar
			FROM
				kunjungan_bayar kb
				JOIN kunjungan_kamar kk ON (kk.id = kb.kunjungan_kamar_id)
				JOIN hak ON (hak.id = kb.hak_id)
				JOIN kwitansi kw ON (kw.id = kb.kwid)
			WHERE
				(kb.karcis_id IS NOT NULL OR kb.bhp_id IS NOT NULL)
				AND kw.tempat_pembayaran = 'IRD'
				$q
			GROUP BY
				kb.karcis_id, kb.bhp_id, kb.hak_id
		";
		//$objResponse->addAssign("debug", "innerHTML", nl2br($sql));
		$kon->sql = $sql;
		$kon->execute();
		$data_karcis = $kon->getAll();

		$table = new Table;
		$table->anime_bg_color = false;
		$table->addTh("Jasa", "Pemilik", "BHP", "JASA RS", "Sp", "Sp1", "SpAn", "UGP", "GRABAF", "Prwt", /*"Ass Non Dokter", "Aknest", "Gizi", "Fisio", "Analis PA", "Bidan", */"Pnjg", "Zakat", "Pajak", "Sub Total");
		$table->addExtraTh("rowspan=\"2\"", "rowspan=\"2\"", "colspan=\"5\"", "colspan=\"5\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"");
		$table->addTh("Pemda", "Adm", "Op", "Rad", "Lab", "Pemda", "Adm", "Sdm", "Bang", "Op");
		for($i=0;$i<sizeof($data_karcis);$i++) {
			$table->addRow(
				$data_karcis[$i][nama], 
				$data_karcis[$i][nama_hak],
				$data_karcis[$i][bhp_p],
				$data_karcis[$i][bhp_rs_adm],
				$data_karcis[$i][bhp_rs_op],
				"?",
				"?",
				uangIndo($data_karcis[$i][jasa_p], false),
				uangIndo($data_karcis[$i][jasa_rs_adm], false),
				uangIndo($data_karcis[$i][jasa_rs_sdm], false),
				uangIndo($data_karcis[$i][jasa_rs_kembang], false),
				uangIndo($data_karcis[$i][jasa_rs_op], false),

				uangIndo($data_karcis[$i][spesialis], false),
				uangIndo($data_karcis[$i][spesialis_pendamping], false),
				uangIndo($data_karcis[$i][spesialis_anestesi], false),
				//uangIndo($data_karcis[$i][dr_umum] + $data_karcis[$i][dr_gigi] + $data_karcis[$i][ugp], false),
				uangIndo($data_karcis[$i][ugp], false),
				uangIndo($data_karcis[$i][grabaf], false),
				//uangIndo($data_karcis[$i][perawat] + $data_karcis[$i][perawat_perinatologi], false),
				uangIndo($data_karcis[$i][perawat], false),
				/*uangIndo($data_karcis[$i][assisten_non_dokter], false),
				uangIndo($data_karcis[$i][aknest], false),
				uangIndo($data_karcis[$i][gizi], false),
				uangIndo($data_karcis[$i][fisioterapi], false),
				uangIndo($data_karcis[$i][analis_pa], false),
				uangIndo($data_karcis[$i][bidan], false),*/
				uangIndo($data_karcis[$i][penunjang], false),
				uangIndo($data_karcis[$i][zakat], false),
				uangIndo($data_karcis[$i][pajak], false),
				uangIndo($data_karcis[$i][mampu_bayar], false)

				/*
				$data_karcis[$i][assisten_non_dokter],
				$data_karcis[$i][aknest],
				$data_karcis[$i][gizi],
				$data_karcis[$i][fisioterapi],
				$data_karcis[$i][analis_pa],
				$data_karcis[$i][bidan],
				*/
			);
			$table->addExtraTr("onclick=\"setBg(this);\"");

			$total[bhp_p] += $data_karcis[$i][bhp_p];
			$total[bhp_rs_adm] += $data_karcis[$i][bhp_rs_adm];
			$total[bhp_rs_op] += $data_karcis[$i][bhp_rs_op];
			$total[jasa_p] += $data_karcis[$i][jasa_p];
			$total[jasa_rs_adm] += $data_karcis[$i][jasa_rs_adm];
			$total[jasa_rs_sdm] += $data_karcis[$i][jasa_rs_sdm];
			$total[jasa_rs_kembang] += $data_karcis[$i][jasa_rs_kembang];
			$total[jasa_rs_op] += $data_karcis[$i][jasa_rs_op];
			$total[spesialis] += $data_karcis[$i][spesialis];
			$total[spesialis_pendamping] += $data_karcis[$i][spesialis_pendamping];
			$total[spesialis_anestesi] += $data_karcis[$i][spesialis_anestesi];
			//$total[ugp] += $data_karcis[$i][dr_umum] + $data_karcis[$i][dr_gigi] + $data_karcis[$i][ugp];
			$total[ugp] += $data_karcis[$i][ugp];
			$total[grabaf] += $data_karcis[$i][grabaf];
			//$total[perawat] += $data_karcis[$i][perawat]+$data_karcis[$i][perawat_perinatologi];
			$total[perawat] += $data_karcis[$i][perawat];
			/*$total[assisten_non_dokter] += $data_karcis[$i][assisten_non_dokter];
			$total[aknest] += $data_karcis[$i][aknest];
			$total[gizi] += $data_karcis[$i][gizi];
			$total[fisioterapi] += $data_karcis[$i][fisioterapi];
			$total[analis_pa] += $data_karcis[$i][analis_pa];
			$total[bidan] += $data_karcis[$i][bidan];*/
			$total[penunjang] += $data_karcis[$i][penunjang];
			$total[zakat] += $data_karcis[$i][zakat];
			$total[pajak] += $data_karcis[$i][pajak];
			$total[mampu_bayar] += $data_karcis[$i][mampu_bayar];
		}
		$table->addTfoot(
			"Total", 
			uangIndo($total[bhp_p], false), 
			uangIndo($total[bhp_rs_adm], false), 
			uangIndo($total[bhp_rs_op], false), 
			"?", 
			"?", 
			uangIndo($total[jasa_p], false), 
			uangIndo($total[jasa_rs_adm], false), 
			uangIndo($total[jasa_rs_sdm], false), 
			uangIndo($total[jasa_rs_kembang], false), 
			uangIndo($total[jasa_rs_op], false), 
			uangIndo($total[spesialis], false), 
			uangIndo($total[spesialis_pendamping], false), 
			uangIndo($total[spesialis_anestesi], false), 
			uangIndo($total[ugp], false), 
			uangIndo($total[grabaf], false), 
			uangIndo($total[perawat], false), 
			/*uangIndo($total[assisten_non_dokter], false), 
			uangIndo($total[aknest], false), 
			uangIndo($total[gizi], false), 
			uangIndo($total[fisioterapi], false), 
			uangIndo($total[analis_pa], false), 
			uangIndo($total[bidan], false), */
			uangIndo($total[penunjang], false), 
			uangIndo($total[zakat], false), 
			uangIndo($total[pajak], false), 
			uangIndo($total[mampu_bayar], false)
			);
		$table->addExtraTfoot("colspan=\"2\"");
		$content = $table->build();
		$judul = nl2br($title);
		$objResponse->addAssign("title", "innerHTML", $judul);
		$objResponse->addAssign("list_data", "innerHTML", $content);
		$_SESSION[igd][pendapatan][title] = $judul;
		$_SESSION[igd][pendapatan][content] = $content;
		return $objResponse;
	}
Exemplo n.º 3
0
	function buka_langsung_bayar($idkk) {
		unset($_SESSION[igd][langsung_bayar]);
		$kon = new Konek;
		//$kon->debug = 1;
		$objResponse = new xajaxResponse;
		//get data pasien
		$kon->sql = "
			SELECT
				CONCAT_WS('-', SUBSTRING(p.id, 1,2), SUBSTRING(p.id, 3,2), SUBSTRING(p.id, 5,2), SUBSTRING(p.id, 7,2)) as id_display,
				p.nama as nama,
				p.tgl_lahir as tgl_lahir,
				CONCAT(p.alamat, ' ', IF(p.rt = '','',CONCAT(' RT ', p.rt)), IF(p.rw = '','',CONCAT(' RW ', p.rw)), ', ', des.nama, ', ', kec.nama, ', ', kab.nama) as alamat,
				kk.tgl_periksa as tgl_periksa,
				CONCAT_WS(' - ', pel.jenis, pel.nama) as nama_pelayanan,
				p.sex as jk,
				CONCAT_WS(' - ', kk.cara_bayar, kk.jenis_askes, rper.nama) as cara_bayar,
				kk.nomor as nomor
			FROM
				kunjungan_kamar kk
				JOIN kunjungan k ON (k.id = kk.kunjungan_id)
				JOIN pasien p ON (p.id = k.pasien_id)
				JOIN kamar kmr ON (kmr.id = kk.kamar_id)
				JOIN pelayanan pel ON (pel.id = kmr.pelayanan_id)
				JOIN ref_desa des ON (des.id = p.desa_id)
				JOIN ref_kecamatan kec ON (kec.id = des.kecamatan_id)
				JOIN ref_kabupaten kab ON (kab.id = kec.kabupaten_id)
				JOIN ref_propinsi prop ON (prop.id = kab.propinsi_id)
				LEFT JOIN ref_perusahaan rper ON (rper.id = kk.perusahaan_id)
			WHERE
				kk.id = '".$idkk."'
			GROUP BY
				p.id
		";
		$kon->execute();
		$data_pasien = $kon->getOne();
		$arr_usia = hitungUmur($data_pasien[tgl_lahir], $data_pasien[tgl_periksa]);
		$data_pasien[usia] = empty($arr_usia[tahun])?"":$arr_usia[tahun] . " thn ";
		$data_pasien[usia] .= empty($arr_usia[bulan])?"":$arr_usia[bulan] . " bln ";
		$data_pasien[usia] .= empty($arr_usia[hari])?"":$arr_usia[hari] . " hr ";
		$objResponse->addClear("modal_lb", "style.display");
		$objResponse->addAssign("lb_id_kunjungan_kamar", "value", $idkk);
		$objResponse->addAssign("lb_no_rm", "innerHTML", $data_pasien[id_display]);
		$objResponse->addAssign("lb_pasien", "innerHTML", $data_pasien[nama]);
		$objResponse->addAssign("lb_sex", "innerHTML", $data_pasien[jk]);
		$objResponse->addAssign("lb_usia", "innerHTML", $data_pasien[usia]);
		$objResponse->addAssign("lb_alamat", "innerHTML", $data_pasien[alamat]);
		$objResponse->addAssign("lb_tgl_periksa", "innerHTML", tanggalIndo($data_pasien[tgl_periksa], 'j F Y'));
		$objResponse->addAssign("lb_cara_bayar", "innerHTML", $data_pasien[cara_bayar]);
		$objResponse->addAssign("lb_pelayanan", "innerHTML", $data_pasien[nama_pelayanan]);
		$objResponse->addAssign("lb_nomor", "innerHTML", empty($data_pasien[nomor])?"-":$data_pasien[nomor]);

		//BIKIN SESSION UNTUK DICETAK
		$_SESSION[igd][langsung_bayar][data_px] = $data_pasien;

		$tabel = new Table;
		$tabel->cellspacing = "0";
		$tabel->scroll = false;
		$tabel->extra_table = "style=\"width:9cm;\"";
		$tabel->addTh("No", "Jasa", "Biaya");
		$tabel->addExtraTh("style=\"width:0.7cm;\"", "style=\"width:6.5cm;\"", "");
		//get data karcis
		$kon->sql = "
			SELECT
				kb.nama as nama,
				kb.bayar_bhp+kb.bayar_jasa as bayar,
				kb.mampu_bayar_bhp+kb.mampu_bayar_jasa as mampu_bayar,
				kwd.kwitansi_id as kwitansi_id
			FROM
				kunjungan_bayar kb
				JOIN kunjungan_kamar kk ON (kk.id = kb.kunjungan_kamar_id)
				LEFT JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
			WHERE
				kb.karcis_id IS NOT NULL
				AND kk.id = '".$idkk."'
			GROUP BY
				kb.id
			ORDER BY kb.id
		";
		$kon->execute();
		$data_karcis = $kon->getAll();
		if(!empty($data_karcis)) {
			$tabel->addRow("","<b>Karcis</b>","");
			for($i=0;$i<sizeof($data_karcis);$i++) {
				$tabel->addRow(
					($i+1),
					$data_karcis[$i][nama],
					uangIndo($data_karcis[$i][bayar])
				);
				$total += $data_karcis[$i][bayar];
				$sudah_dibayar += $data_karcis[$i][mampu_bayar];
				//belum bayar
				if(!$data_karcis[$i][kwitansi_id]) $kurang += $data_karcis[$i][bayar];
			}
		}

		//get data tindakan
		$kon->sql = "
			SELECT
				kki.nama as nama,
				SUM(kb.bayar_jasa) as bayar,
				SUM(kb.mampu_bayar_jasa) as mampu_bayar,
				kwd.kwitansi_id as kwitansi_id
			FROM
				kunjungan_kamar_icopim kki 
				JOIN kunjungan_bayar kb ON (kb.kunjungan_kamar_icopim_id = kki.id)
				LEFT JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
			WHERE
				kb.icopim_detil_id IS NOT NULL
				AND kki.kunjungan_kamar_id = '".$idkk."'
			GROUP BY
				kki.id
			ORDER BY kki.id
		";
		$kon->execute();
		$data_tindakan = $kon->getAll();
		if(!empty($data_tindakan)) {
			$tabel->addRow("","<b>Tindakan</b>","");
			for($i=0;$i<sizeof($data_tindakan);$i++) {
				$tabel->addRow(
					($i+1),
					$data_tindakan[$i][nama],
					uangIndo($data_tindakan[$i][bayar])
				);
				$total += $data_tindakan[$i][bayar];
				$sudah_dibayar += $data_tindakan[$i][mampu_bayar];
				//belum bayar
				if(!$data_tindakan[$i][kwitansi_id]) $kurang += $data_tindakan[$i][bayar];
			}
		}


		//get data bhp
		$kon->sql = "
			SELECT
				kb.nama as nama,
				kb.bayar_bhp as bayar,
				kb.mampu_bayar_bhp as mampu_bayar,
				kwd.kwitansi_id as kwitansi_id
			FROM
				kunjungan_bayar kb
				JOIN kunjungan_kamar kk ON (kk.id = kb.kunjungan_kamar_id)
				LEFT JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
			WHERE
				kb.bhp_id IS NOT NULL
				AND kk.id = '".$idkk."'
			GROUP BY
				kb.id
			ORDER BY kb.id
		";
		$kon->execute();
		$data_bhp = $kon->getAll();
		if(!empty($data_bhp)) {
			$tabel->addRow("","<b>Bahan Habis Pakai</b>","");
			for($i=0;$i<sizeof($data_bhp);$i++) {
				$tabel->addRow(
					($i+1),
					$data_bhp[$i][nama],
					uangIndo($data_bhp[$i][bayar])
				);
				$total += $data_bhp[$i][bayar];
				$sudah_dibayar += $data_bhp[$i][mampu_bayar];
				//belum bayar
				if(!$data_bhp[$i][kwitansi_id]) $kurang += $data_bhp[$i][bayar];
			}
		}
		
		$tabel->addRow("","<b>Total</b>", uangIndo($total));
		$tabel_jasa = $tabel->build();
		$tabel_jasa .= "<br />Terbilang : <i>" . terbilang($total) . "</i>";
		$objResponse->addAssign("lb_list_jasa", "innerHTML", $tabel_jasa);
		$objResponse->addScriptCall("disable_mainbar", "#E5E6E1");
		return $objResponse;
	}
Exemplo n.º 4
0
       function cari_obat($hal = 0, $val) {
         $val[obat] = addslashes($val[obat]);
         $q = " AND nama LIKE '%".$val[obat]."%' ";
         $paging = new MyPagina;
         $paging->rows_on_page = 10;
         $paging->hal = $hal;

        /*$paging->sql = "
				SELECT
					id as id,
					REPLACE(nama, '".$val[bhp]."','<b>".$val[bhp]."</b>') as nama_replace,
					nama as nama,
					biaya as biaya
				FROM
					bhp
				WHERE
					1=1
					$q
				ORDER BY
					nama
			";*/

          $paging->sql = "select db_apotek.ms_barang.id as id, db_apotek.ms_barang.kd_barang as kd_barang,db_apotek.ms_barang.nama as nama,
          barang_unit.stok as stok, db_apotek.barang_unit.fld02 as biaya from db_apotek.ms_barang, db_apotek.barang_unit 
where db_apotek.ms_barang.id = db_apotek.barang_unit.barang_id and db_apotek.barang_unit.unit_id =4";  


         $paging->onclick_func = "xajax_cari_obat";
         $paging->setOnclickValue("xajax.getFormValues('cari_obat')");
         $paging->get_page_result();

         $bhp_data = $paging->data;
         $bhp_no = $paging->start_number();
         $bhp_navi = $paging->navi();


         $objResponse = new xajaxResponse();

         $table = new Table;
         $table->tbody_height = 200;
         $table->addTh("No", "Obat", "Harga");
         $table->addExtraTh("style=\"width:30px\"", "", "");
         for($i = 0; $i < sizeof($bhp_data); $i++) {
            $table->addRow(($bhp_no + $i), $bhp_data[$i]['nama'], uangIndo($bhp_data[$i]['biaya']));
            $table->addOnclickTd("xajax_get_obat(".$bhp_data[$i]['id'].", '".addslashes($bhp_data[$i]['nama']).
               "', '".($bhp_data[$i]['biaya'])."');", "xajax_get_obat(".$bhp_data[$i]['id'].", '".
               addslashes($bhp_data[$i]['nama'])."', '".($bhp_data[$i]['biaya'])."');",
               "xajax_get_obat(".$bhp_data[$i]['id'].", '".addslashes($bhp_data[$i]['nama']).
               "', '".($bhp_data[$i]['biaya'])."');");
         }
         $tabel = $table->build();
         $objResponse->addAssign("bhp_navi", "innerHTML", $bhp_navi);
         $objResponse->addAssign("list_bhp", "innerHTML", $tabel);
         return $objResponse;
      }
Exemplo n.º 5
0
		SUM(kb.bayar_bhp+kb.bayar_jasa) as bayar,
		SUM(kb.mampu_bayar_bhp+kb.mampu_bayar_jasa) as mampu_bayar
	FROM
		kunjungan_kendaraan kkd 
		JOIN kunjungan_bayar kb ON (kb.kunjungan_kendaraan_id = kkd.id)
		JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
	WHERE
		kwd.kwitansi_id= '".$no_kwitansi."'
	GROUP BY
		kkd.id
";
$kon->execute();
$data_kendaraan = $kon->getAll();
if(!empty($data_kendaraan)) {
	$tabel->addRow("","<b>Sewa Kendaraan</b>","","");
	for($i=0;$i<sizeof($data_kendaraan);$i++) {
		$tabel->addRow(
			($i+1),
			$data_kendaraan[$i][nama],
			uangIndo($data_kendaraan[$i][bayar]),uangIndo($data_kendaraan[$i][bayar])
		);
		$total += $data_kendaraan[$i][bayar];
		$mampu_bayar += $data_kendaraan[$i][mampu_bayar];
	}
}
$tabel->addRow("","<b>Total</b>", uangIndo($total),uangIndo($total));
$tabel->addRow("","<b>Dibayar</b>", uangIndo($mampu_bayar),uangIndo($mampu_bayar));
//param u/ HTML
//$_SESSION[igd][langsung_bayar][data_px]
$tabel_jasa = $tabel->build();
?>
Exemplo n.º 6
0
	function list_data($hal=0, $val="") {
		if($val[cara_bayar]) $q = " AND kk.cara_bayar = '".$val[cara_bayar]."' ";
		if($val[pasien_id]) {
			$q .= " AND p.id = '".$val[pasien_id]."' ";
		} elseif($val[nama]) {
			$q .= " AND p.nama LIKE '%".$val[nama]."%' ";
		} elseif($val[kwitansi_id]) {
			$q .= " AND kw.id = '".$val[kwitansi_id]."' ";
		} else {
			$tgl_daftar_dari = $val[tgl_mulai_thn] . "-" . $val[tgl_mulai_bln] . "-" . $val[tgl_mulai_tgl];
			$tgl_daftar_sampai = $val[tgl_selesai_thn] . "-" . $val[tgl_selesai_bln] . "-" . $val[tgl_selesai_tgl];
			$q .= " AND DATE(kk.tgl_keluar) BETWEEN '".$tgl_daftar_dari."' AND '".$tgl_daftar_sampai."' ";
		}
		if(!$val[semua]) $q .= " AND kw.status = 'ANGSUR' ";
		$paging = new MyPagina;
		$paging->setOnclickValue("xajax.getFormValues('form_kunjungan')");
		$sql = "
			SELECT 
				k.id as id_kunjungan,
				kk.id as id_kunjungan_kamar,
				CONCAT_WS('-', SUBSTRING(p.id, 1,2), SUBSTRING(p.id, 3,2), SUBSTRING(p.id, 5,2), SUBSTRING(p.id, 7,2)) as no_rm,
				p.id as pasien_id,
				REPLACE((p.nama), ('".$val[nama]."'), ('<b>".$val[nama]."</b>')) as nama,
				kk.cara_bayar as cara_bayar,
				CONCAT(p.alamat, ' ', 'RT ', p.rt, '/ RW ', p.rw, '<br />',des.nama, ', ', kec.nama, ', ', kab.nama, '<br />', prop.nama) as alamat,
				CONCAT_WS('-', kw.tempat_pembayaran, kw.id) as no_kwitansi,
				kw.id as kwitansi_id,
				kw.bayar as bayar,
				SUM(kb.bayar_bhp+kb.bayar_jasa)-kw.bayar as kurang,
				kw.tgl as tgl
			FROM 
				kunjungan k
				JOIN pasien p ON (p.id = k.pasien_id)
				JOIN kunjungan_kamar kk ON (kk.kunjungan_id = k.id)
				JOIN kamar kmr ON (kmr.id = kk.kamar_id)
				JOIN pelayanan pel ON (pel.id = kmr.pelayanan_id)
				JOIN kunjungan_bayar kb ON (kb.kunjungan_kamar_id = kk.id)
				JOIN kwitansi_detil kwd ON (kwd.kunjungan_bayar_id = kb.id)
				JOIN kwitansi kw ON (kw.id = kwd.kwitansi_id)
				JOIN ref_desa des ON (des.id = p.desa_id)
				JOIN ref_kecamatan kec ON (kec.id = des.kecamatan_id)
				JOIN ref_kabupaten kab ON (kab.id = kec.kabupaten_id)
				JOIN ref_propinsi prop ON (prop.id = kab.propinsi_id)
			WHERE
				1=1
				$q
			GROUP BY
				kw.id
			ORDER BY 
				kw.id
		";
		$paging->sql = $sql;
		$paging->rows_on_page = 20;
		$paging->hal = $hal;
		$paging->get_page_result();

		$_SESSION[keuangan_kunjungan][hal] = $hal;

		$data = $paging->data;
		$no = $paging->start_number();
		$navi = $paging->navi();

		$table = new Table;
		$table->tbody_height = 310;
		$table->addTh(
			"No", 
			"No. RM", 
			"Nama Pasien", 
			"Alamat", 
			"Cara Bayar", 
			"Nomor Kwitansi", 
			"Bayar",
			"Kurang"
		);
		$table->addExtraTh("style=\"width:20px;\"","style=\"width:100px;\"","","","","","","");
		for($i=0;$i<sizeof($data);$i++) {
			//if(!empty($baru[$i][kamar])) $kamar = implode("<br />", $baru[$i][kamar]);
			//else $kamar = $baru[$i][kamar][0];
			$table->addRow(
				($no+$i), 
				$data[$i][no_rm], 
				$data[$i][nama], 
				$data[$i][alamat], 
				$data[$i][cara_bayar], 
				$data[$i][no_kwitansi],
				uangIndo($data[$i][bayar]),
				uangIndo($data[$i][kurang])
				);
			$table->addOnclickTd(
				"xajax_buka_langsung_bayar('".$data[$i][kwitansi_id]."')",
				"xajax_buka_langsung_bayar('".$data[$i][kwitansi_id]."')",
				"xajax_buka_langsung_bayar('".$data[$i][kwitansi_id]."')",
				"xajax_buka_langsung_bayar('".$data[$i][kwitansi_id]."')",
				"xajax_buka_langsung_bayar('".$data[$i][kwitansi_id]."')",
				"xajax_buka_langsung_bayar('".$data[$i][kwitansi_id]."')",
				"xajax_buka_langsung_bayar('".$data[$i][kwitansi_id]."')",
				"xajax_buka_langsung_bayar('".$data[$i][kwitansi_id]."')"
			);
		}
		$ret = $table->build();
		$objResponse = new xajaxResponse();
		//$objResponse->addAssign("debug", "innerHTML", $val[semua]);
		$objResponse->addAssign("navi", "innerHTML", $navi);
		$objResponse->addAssign("list_data", "innerHTML", $ret);
		return $objResponse;
	}
Exemplo n.º 7
0
	function list_data($val) {
		unset($_SESSION[keuangan][lap_keuangan_bulanan]);
		//get data karcis dan BHP
		$objResponse = new xajaxResponse;
		$kon = new Konek;
		$title = "Laporan Keuangan Bulanan";
		$title .= "\nTahun " . $val[tahun];
		$sql = "
			SELECT
				MONTH(kw.tgl) as bulan,
				SUM(kb.mampu_bayar_bhp+kb.mampu_bayar_jasa) as bayar,
				CASE
					WHEN rk.cara_bayar IS NOT NULL THEN rk.cara_bayar
					WHEN lk.cara_bayar IS NOT NULL THEN lk.cara_bayar
					ELSE kk.cara_bayar
				END as cara_bayar,
				CASE
					WHEN rk.jenis_askes IS NOT NULL THEN rk.jenis_askes
					WHEN lk.jenis_askes IS NOT NULL THEN lk.jenis_askes
					ELSE kk.jenis_askes
				END as jenis_askes
			FROM
				kunjungan_bayar kb
				LEFT JOIN kunjungan_kamar kk ON (kk.id = kb.kunjungan_kamar_id)
				LEFT JOIN lab_kunjungan lk ON (lk.id = kb.lab_kunjungan_id)
				LEFT JOIN radio_kunjungan rk ON (rk.id = kb.radio_kunjungan_id)
				JOIN kwitansi kw ON (kw.id = kb.kwid)
			WHERE
				YEAR(kw.tgl) = '".$val[tahun]."'
				AND kb.kwid IS NOT NULL
			GROUP BY
				MONTH(kw.tgl), kk.cara_bayar, lk.cara_bayar, rk.cara_bayar, kk.jenis_askes, lk.jenis_askes, rk.jenis_askes
			ORDER BY
				MONTH(kw.tgl)
		";
		//$objResponse->addAssign("debug", "innerHTML", nl2br($sql));
		$kon->sql = $sql;
		$kon->execute();
		$data = $kon->getAll();

		$table = new Table;
		$table->cellspacing = "0";
		$table->anime_bg_color = false;
		$table->addTh("No", "Bulan", "Cara Pembayaran", "Jumlah", "Kumulatif", "Target", "% Pendapatan", "% Kumulatif");
		$table->addExtraTh("rowspan=\"2\"", "rowspan=\"2\"", "colspan=\"7\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"", "rowspan=\"2\"");
		$table->addTh("Umum", "Jamsostek", "Dana Reksa Desa", "Kontrak", "Askeskin", "Askes Lain", "Lain-lain");
		$table->addTh("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14");
		$new = array();
		for($i=0;$i<sizeof($data);$i++) {
			if($data[$i][bulan] == $data[$i-1][bulan]) {
				if($data[$i][cara_bayar] == "UMUM") {
					$new[$data[$i][bulan]][UMUM] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "JAMSOSTEK") {
					$new[$data[$i][bulan]][JAMSOSTEK] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "DANA REKSA DESA") {
					$new[$data[$i][bulan]][DANA_REKSA_DESA] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "KONTRAK") {
					$new[$data[$i][bulan]][KONTRAK] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "ASKES"){
					if($data[$i][jenis_askes] == "Askes Kin") {
						$new[$data[$i][bulan]][ASKESKIN] = $data[$i][bayar];
					} else {
						$new[$data[$i][bulan]][ASKES_LAIN] = $data[$i][bayar];
					}
				} else {
					$new[$data[$i][bulan]][LAIN] = $data[$i][bayar];
				}
				$new[$data[$i][bulan]][JUMLAH] += $data[$i][bayar];
			} else {
				if($data[$i][cara_bayar] == "UMUM") {
					$new[$data[$i][bulan]][UMUM] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "JAMSOSTEK") {
					$new[$data[$i][bulan]][JAMSOSTEK] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "DANA REKSA DESA") {
					$new[$data[$i][bulan]][DANA_REKSA_DESA] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "KONTRAK") {
					$new[$data[$i][bulan]][KONTRAK] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "ASKES"){
					if($data[$i][jenis_askes] == "Askes Kin") {
						$new[$data[$i][bulan]][ASKESKIN] = $data[$i][bayar];
					} else {
						$new[$data[$i][bulan]][ASKES_LAIN] = $data[$i][bayar];
					}
				} else {
					$new[$data[$i][bulan]][LAIN] = $data[$i][bayar];
				}
				$new[$data[$i][bulan]][JUMLAH] = $data[$i][bayar];
			}
		}
		for($i=1;$i<13;$i++) {
			$bulan = bulanIndo($i, "F");
			$kumulatif += $new[$i][JUMLAH];
			$persen_pendapatan = @round($new[$i][JUMLAH]*100/$kumulatif,2);
			$persen_kumulatif = @round($kumulatif*100/$val["bulan_" . $i],2);

			$table->addRow(
				$i, 
				$bulan, 
				uangIndo($new[$i][UMUM], false), 
				uangIndo($new[$i][JAMSOSTEK], false), 
				uangIndo($new[$i][DANA_REKSA_DESA], false), 
				uangIndo($new[$i][KONTRAK], false), 
				uangIndo($new[$i][ASKESKIN], false), 
				uangIndo($new[$i][ASKES_LAIN], false), 
				uangIndo($new[$i][LAIN], false), 
				uangIndo($new[$i][JUMLAH], false), 
				uangIndo($kumulatif, false), 
				uangIndo($val["bulan_" . $i], false), 
				uangIndo($persen_pendapatan, false), 
				uangIndo($persen_kumulatif)
			);
			$table->addExtraTd(
				"",
				"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\""
			);

			$total[UMUM] += $new[$i][UMUM];
			$total[JAMSOSTEK] += $new[$i][JAMSOSTEK];
			$total[DANA_REKSA_DESA] += $new[$i][DANA_REKSA_DESA];
			$total[KONTRAK] += $new[$i][KONTRAK];
			$total[ASKESKIN] += $new[$i][ASKESKIN];
			$total[ASKES_LAIN] += $new[$i][ASKES_LAIN];
			$total[LAIN] += $new[$i][LAIN];
			$total[JUMLAH] += $new[$i][JUMLAH];
			$total[kumulatif] += $kumulatif;
			$total[target] += $val["bulan_" . $i];
			
			$table->addExtraTr("onclick=\"setBg(this);\"");
		}
		$table->addTfoot(
			"TOTAL",
			uangIndo($total[UMUM], false),
			uangIndo($total[JAMSOSTEK], false),
			uangIndo($total[DANA_REKSA_DESA], false),
			uangIndo($total[KONTRAK], false),
			uangIndo($total[ASKESKIN], false),
			uangIndo($total[ASKES_LAIN], false),
			uangIndo($total[LAIN], false),
			uangIndo($total[JUMLAH], false),
			uangIndo($total[kumulatif], false),
			uangIndo($total[target], false),
			"-","-"
		);
		$table->addExtraTfoot("colspan=\"2\"");
		$content = $table->build();
		$judul = nl2br($title);
		//$objResponse->addAlert(print_r($new));
		$objResponse->addAssign("title", "innerHTML", $judul);
		$objResponse->addAssign("list_data", "innerHTML", $content);
		$_SESSION[keuangan][lap_keuangan_bulanan][title] = $judul;
		$_SESSION[keuangan][lap_keuangan_bulanan][content] = $content;
		return $objResponse;
	}
Exemplo n.º 8
0
	function cari_bhp($hal = 0, $val) {
		$val[bhp] = addslashes($val[bhp]);
		$q = " AND nama LIKE '%".$val[bhp]."%' ";
		$paging = new MyPagina;
		$paging->rows_on_page = 10;
		$paging->hal = $hal;
		
		$paging->sql = "
			SELECT 
				id as id,
				REPLACE(nama, '".$val[bhp]."','<b>".$val[bhp]."</b>') as nama_replace,
				nama as nama,
				biaya as biaya
			FROM 
				bhp
			WHERE
				1=1
				$q
			ORDER BY 
				nama
			";
		
		$paging->onclick_func = "xajax_cari_bhp";
		$paging->setOnclickValue("xajax.getFormValues('cari_bhp')");
		$paging->get_page_result();

		$bhp_data = $paging->data;
		$bhp_no = $paging->start_number();
		$bhp_navi = $paging->navi();
		
		$objResponse = new xajaxResponse();
		
		$table = new Table;
		$table->tbody_height = 200;
		$table->addTh("No", "BHP", "Biaya");
		$table->addExtraTh("style=\"width:30px\"", "", "");
		for($i=0;$i<sizeof($bhp_data);$i++) {
			$table->addRow(($bhp_no+$i), $bhp_data[$i]['nama_replace'], uangIndo($bhp_data[$i]['biaya']));
			$table->addOnclickTd(
				"xajax_get_bhp(" . $bhp_data[$i][id] . ", '" . addslashes($bhp_data[$i]['nama']) . "', '".($bhp_data[$i]['biaya'])."');",
				"xajax_get_bhp(" . $bhp_data[$i][id] . ", '" . addslashes($bhp_data[$i]['nama']) . "', '".($bhp_data[$i]['biaya'])."');",
				"xajax_get_bhp(" . $bhp_data[$i][id] . ", '" . addslashes($bhp_data[$i]['nama']) . "', '".($bhp_data[$i]['biaya'])."');"
			);
		}
		$tabel = $table->build();
		$objResponse->addAssign("bhp_navi", "innerHTML", $bhp_navi);
		$objResponse->addAssign("list_bhp","innerHTML", $tabel);
		return $objResponse;
	}
	function list_data($val) {
		unset($_SESSION[keuangan][lap_keuangan_bulanan]);
		//get data karcis dan BHP
		$objResponse = new xajaxResponse;
		$kon = new Konek;
		$title = "Laporan Keuangan Per Pelayanan";
		$title .= "\nPeriode " . tanggalIndo($val[thn_start] . "-" . $val[bln_start] . "-" . $val[tgl_start], "j F Y") . " - " . tanggalIndo($val[thn_end] . "-" . $val[bln_end] . "-" . $val[tgl_end], "j F Y");
		$sql = "
			SELECT
				CASE
					WHEN kb.lab_kunjungan_id IS NOT NULL THEN 'LAB'
					WHEN kb.radio_kunjungan_id IS NOT NULL THEN 'RADIO'
					ELSE pel.id
				END as id_pelayanan,
				CASE
					WHEN kb.lab_kunjungan_id IS NOT NULL THEN 'Laboratorium'
					WHEN kb.radio_kunjungan_id IS NOT NULL THEN 'Radiologi'
					WHEN pel.jenis = 'IGD' THEN 'IRD'
					ELSE CONCAT_WS(' - ', pel.jenis, pel.nama)
				END as nama_pelayanan,
				SUM(kb.mampu_bayar_bhp+kb.mampu_bayar_jasa) as bayar,
				CASE
					WHEN rk.cara_bayar IS NOT NULL THEN rk.cara_bayar
					WHEN lk.cara_bayar IS NOT NULL THEN lk.cara_bayar
					ELSE kk.cara_bayar
				END as cara_bayar,
				CASE
					WHEN rk.jenis_askes IS NOT NULL THEN rk.jenis_askes
					WHEN lk.jenis_askes IS NOT NULL THEN lk.jenis_askes
					ELSE kk.jenis_askes
				END as jenis_askes
			FROM
				kunjungan_bayar kb
				LEFT JOIN kunjungan_kamar kk ON (kk.id = kb.kunjungan_kamar_id)
				LEFT JOIN kamar kmr ON (kmr.id = kk.kamar_id)
				LEFT JOIN pelayanan pel ON (pel.id = kmr.pelayanan_id)
				LEFT JOIN lab_kunjungan lk ON (lk.id = kb.lab_kunjungan_id)
				LEFT JOIN radio_kunjungan rk ON (rk.id = kb.radio_kunjungan_id)
				JOIN kwitansi kw ON (kw.id = kb.kwid)
			WHERE
				DATE(kw.tgl) BETWEEN '".$val[thn_start]."-".$val[bln_start]."-".$val[tgl_start]."' AND '".$val[thn_end]."-".$val[bln_end]."-".$val[tgl_end]."'
				AND kb.kwid IS NOT NULL
			GROUP BY
				id_pelayanan, kk.cara_bayar, lk.cara_bayar, rk.cara_bayar, kk.jenis_askes, lk.jenis_askes, rk.jenis_askes
			ORDER BY
				1
		";
		//$objResponse->addAssign("debug", "innerHTML", nl2br($sql));
		$kon->sql = $sql;
		$kon->execute();
		$data = $kon->getAll();

		$table = new Table;
		$table->cellspacing = "0";
		$table->anime_bg_color = false;
		$table->addTh("No", "Pelayanan", "Cara Pembayaran", "Jumlah");
		$table->addExtraTh("rowspan=\"2\"", "rowspan=\"2\"", "colspan=\"7\"", "rowspan=\"2\"");
		$table->addTh("Umum", "Jamsostek", "Dana Reksa Desa", "Kontrak", "Askeskin", "Askes Lain", "Lain-lain");
		$table->addTh("1", "2", "3", "4", "5", "6", "7", "8", "9", "10");
		$new = array();
		$s = 0;
		for($i=0;$i<sizeof($data);$i++) {
			if($data[$i][id_pelayanan] == $data[$i-1][id_pelayanan]) {
				if($data[$i][cara_bayar] == "UMUM") {
					$new[$s][UMUM] += $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "JAMSOSTEK") {
					$new[$s][JAMSOSTEK] += $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "DANA REKSA DESA") {
					$new[$s][DANA_REKSA_DESA] += $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "KONTRAK") {
					$new[$s][KONTRAK] += $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "ASKES"){
					if($data[$i][jenis_askes] == "Askes Kin") {
						$new[$s][ASKESKIN] += $data[$i][bayar];
					} else {
						$new[$s][ASKES_LAIN] += $data[$i][bayar];
					}
				} else {
					$new[$s][LAIN] += $data[$i][bayar];
				}
				$new[$s][JUMLAH] += $data[$i][bayar];
			} else {
				if($i !=0 ) $s++;
				$new[$s][nama_pelayanan] = $data[$i][nama_pelayanan];
				if($data[$i][cara_bayar] == "UMUM") {
					$new[$s][UMUM] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "JAMSOSTEK") {
					$new[$s][JAMSOSTEK] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "DANA REKSA DESA") {
					$new[$s][DANA_REKSA_DESA] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "KONTRAK") {
					$new[$s][KONTRAK] = $data[$i][bayar];
				} elseif($data[$i][cara_bayar] == "ASKES"){
					if($data[$i][jenis_askes] == "Askes Kin") {
						$new[$s][ASKESKIN] = $data[$i][bayar];
					} else {
						$new[$s][ASKES_LAIN] = $data[$i][bayar];
					}
				} else {
					$new[$s][LAIN] = $data[$i][bayar];
				}
				$new[$s][JUMLAH] = $data[$i][bayar];
			}
		}
		for($i=0;$i<sizeof($new);$i++) {
			$table->addRow(
				($i+1), 
				$new[$i][nama_pelayanan], 
				uangIndo($new[$i][UMUM], false), 
				uangIndo($new[$i][JAMSOSTEK], false), 
				uangIndo($new[$i][DANA_REKSA_DESA], false), 
				uangIndo($new[$i][KONTRAK], false), 
				uangIndo($new[$i][ASKESKIN], false), 
				uangIndo($new[$i][ASKES_LAIN], false), 
				uangIndo($new[$i][LAIN], false), 
				uangIndo($new[$i][JUMLAH], false)
			);
			$table->addExtraTd(
				"",
				"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\"",
				"style=\"text-align:right\""
			);

			$total[UMUM] += $new[$i][UMUM];
			$total[JAMSOSTEK] += $new[$i][JAMSOSTEK];
			$total[DANA_REKSA_DESA] += $new[$i][DANA_REKSA_DESA];
			$total[KONTRAK] += $new[$i][KONTRAK];
			$total[ASKESKIN] += $new[$i][ASKESKIN];
			$total[ASKES_LAIN] += $new[$i][ASKES_LAIN];
			$total[LAIN] += $new[$i][LAIN];
			$total[JUMLAH] += $new[$i][JUMLAH];
			
			$table->addExtraTr("onclick=\"setBg(this);\"");
		}
		$table->addTfoot(
			"TOTAL",
			uangIndo($total[UMUM], false),
			uangIndo($total[JAMSOSTEK], false),
			uangIndo($total[DANA_REKSA_DESA], false),
			uangIndo($total[KONTRAK], false),
			uangIndo($total[ASKESKIN], false),
			uangIndo($total[ASKES_LAIN], false),
			uangIndo($total[LAIN], false),
			uangIndo($total[JUMLAH], false)
		);
		$table->addExtraTfoot("colspan=\"2\"");
		$content = $table->build();
		$judul = nl2br($title);
		//$objResponse->addAlert(print_r($new));
		$objResponse->addAssign("title", "innerHTML", $judul);
		$objResponse->addAssign("list_data", "innerHTML", $content);
		$_SESSION[keuangan][lap_keuangan_bulanan][title] = $judul;
		$_SESSION[keuangan][lap_keuangan_bulanan][content] = $content;
		return $objResponse;
	}