예제 #1
0
function JalankanProses($_pmbJumlah, $_pmbProses)
{
    $tmr = 1;
    include_once "../baa/mhswbaru.lib.php";
    // Tampilan proses
    echo "\r\n  <p align=center>\r\n  <font size=+1>{$_pmbProses}</font> <sup>~{$_pmbJumlah}</sup><br />" . $_SESSION['_pmbPMBID_' . $_pmbProses] . "<br />" . $_SESSION['_pmbNama_' . $_pmbProses] . "</p>";
    // Ambil data Cama
    $pmb = GetFields('pmb', "KodeID='" . KodeID . "' and PMBID", $_SESSION['_pmbPMBID_' . $_pmbProses], "*");
    if ($pmb['BIPOTID'] == 0) {
        SetBIPOTID($pmb);
    }
    ProsesBIPOT2($pmb['PMBID']);
    HitungUlangBIPOTPMB($pmb['PMBID']);
    // Ambil BIPOT yg sudah diupdate
    $pmb = GetFields('pmb', "KodeID='" . KodeID . "' and PMBID", $_SESSION['_pmbPMBID_' . $_pmbProses], "*");
    $prodi = GetaField('prodi', "KodeID='" . KodeID . "' and ProdiID", $pmb['ProdiID'], 'Nama');
    $smt = GetaField('semester', 'Semester', $_SESSION['_pmbSemester'], 'Nama');
    $smt = substr($smt, 0, 6);
    $smt = str_pad($smt, 6, ' ', STR_PAD_RIGHT);
    // Tuliskan ke file
    $fn = "../" . $_SESSION['_pmbFile'];
    $f = fopen($fn, 'a');
    fwrite($f, $_SESSION['_pmbTahun'] . '-' . $smt . '|' . '000000|00000|' . str_pad($pmb['PMBID'], 16, ' ', STR_PAD_RIGHT) . '|' . str_pad(substr($pmb['Nama'], 0, 21), 21, ' ', STR_PAD_RIGHT) . '|' . str_pad(' ', 25, ' ', STR_PAD_RIGHT) . '|' . str_pad($pmb['ProdiID'], 10, ' ', STR_PAD_RIGHT) . '|' . str_pad(substr($prodi, 0, 25), 25, ' ', STR_PAD_RIGHT) . '|' . substr($pmb['PMBPeriodID'], 0, 4) . '|' . '00000004201390002572|' . str_pad(' ', 20, ' ', STR_PAD_RIGHT) . '|' . str_pad($pmb['TotalBiaya'] - $pmb['TotalBayar'], 10, '0', STR_PAD_LEFT) . '|' . '0000000000|0000000000|0000000000|0000000000|0000000000|0000000000|0000000000|0000000000|' . '01|' . $_SESSION['_pmbKodeInstitusi'] . '|' . $_SESSION['_pmbKodePembayaran'] . '|' . str_pad(substr($pmb['PMBID'], 0, 10), 10, '0', STR_PAD_LEFT) . '|' . 'F' . "\n");
    fclose($f);
    // Next...
    $_SESSION['_pmbProses']++;
    echo <<<SCR
    <script>
    window.onload=setTimeout("window.location='../{$_SESSION['mnux']}.proses.php'", {$tmr});
    </script>
SCR;
}
예제 #2
0
function JalankanProses($_upJumlah, $_upProses)
{
    $arr = $_SESSION['_up_' . $_upProses];
    $dat = explode('|', $arr);
    // persentase
    $_sudah = $_upJumlah > 0 ? $_upProses / $_upJumlah * 100 : 0;
    $_sisa = 100 - $_sudah;
    // Parameter
    $BayarMhswID = 'BTN-' . $dat[23];
    $NamaTahun = $dat[0];
    $PMBID = $dat[3];
    $NamaMhsw = $dat[4];
    $ProdiID = $dat[6];
    $NamaProdi = $dat[7];
    $Angkatan = $dat[8];
    $RekeningID = "4201390002572";
    $Jumlah = $dat[10] + 0;
    $NamaBIPOT = $dat[11];
    $BuktiSetoran = $dat[23] . '|' . $dat[24];
    $Catatan = $dat[27];
    // Prosesnya
    $thn = explode('-', $NamaTahun);
    $Tahun = $thn[0];
    $Semester = substr($thn[1], 1, 2) == 'GA' ? 1 : 2;
    $TahunID = $Tahun . $Semester;
    // Cek, apakah sudah dibayarkan sebelumnya atau belum?
    $ada = GetaField('bayarmhsw', "KodeID='" . KodeID . "' and BayarMhswID", $BayarMhswID, "count(BayarMhswID)") + 0;
    if ($ada > 0) {
        echo "<p style='text-align:center;background:red'>Sudah pernah dibayarkan</p>";
    } else {
        include_once "../baa/mhswbaru.lib.php";
        // Tambahkan di catatan pembayaran
        $s = "insert into bayarmhsw\r\n      (BayarMhswID, KodeID, TahunID, RekeningID, PMBID, TrxID, PMBMhswID,\r\n      Bank, BuktiSetoran, Tanggal, Jumlah,\r\n      Keterangan, LoginBuat, TanggalBuat, NA)\r\n      values\r\n      ('{$BayarMhswID}', '" . KodeID . "', '{$TahunID}', '{$RekeningID}', '{$PMBID}', 1, 0,\r\n      'BTN', '{$BuktiSetoran}', now(), {$Jumlah},\r\n      '{$Catatan}', '{$_SESSION['_Login']}', now(), 'N')";
        $r = _query($s);
        die("<pre>{$s}</pre>");
        // Update summary
        HitungUlangBIPOTPMB($PMBID);
    }
    // Tampilan proses
    $_Jumlah = number_format($Jumlah);
    // Tampilan proses
    echo "\r\n  <p align=center>\r\n  <font size=+1>{$_upProses}</font> <sup>~{$_upJumlah}</sup><br />\r\n    <img src='../img/B1.jpg' height=20 width=1 /><img src='../img/B2.jpg' height=20 width={$_sudah} /><img src='../img/B3.jpg' height=20 width={$_sisa} /><img src='../img/B1.jpg' height=20 width=1 />\r\n    <br />\r\n    Tahun Akd: {$TahunID} <br />\r\n    PMBID: {$PMBID} <br />\r\n    Nama: <b>{$NamaMhsw}</b><br />\r\n    Prodi: <b>{$NamaProdi}</b> <sup>{$ProdiID}</sup><br />\r\n    Rekening: <b>{$RekeningID}</b><br />\r\n    Jumlah: <b>{$_Jumlah}</b><br />\r\n    Catatan: <b>{$Catatan}</b><br />\r\n  </p>";
    // Next...
    $tmr = 1000;
    $_SESSION['_upProses']++;
    echo <<<SCR
    <script>
    window.onload=setTimeout("window.location='../{$_SESSION['mnux']}.upload.php'", {$tmr});
    </script>
SCR;
}
function Simpan($pmbid, $md, $id)
{
    $BIPOTNamaID = $_REQUEST['BIPOTNamaID'] + 0;
    $Jumlah = $_REQUEST['Jumlah'] + 0;
    $Besar = $_REQUEST['Besar'] + 0;
    $Dibayar = $_REQUEST['Dibayar'] + 0;
    $Catatan = sqling($_REQUEST['Catatan']);
    // Simpan
    if ($md == 0) {
        $s = "update bipotmhsw\n      set Jumlah = '{$Jumlah}',\n          Besar  = '{$Besar}',\n          Dibayar = '{$Dibayar}',\n          Catatan = '{$Catatan}',\n          LoginEdit = '{$_SESSION['_Login']}',\n          TanggalEdit = now()\n      where BIPOTMhswID = '{$id}' ";
        $r = _query($s);
    } elseif ($md == 1) {
        $pmb = GetFields('pmb', "KodeID='" . KodeID . "' and PMBID", $pmbid, '*');
        $bn = GetFields('bipotnama', 'BIPOTNamaID', $BIPOTNamaID, '*');
        $s = "insert into bipotmhsw\n      (KodeID, PMBMhswID, PMBID, TahunID,\n      BIPOT2ID, BIPOTNamaID, Nama, TrxID,\n      Jumlah, Besar, Dibayar, Catatan,\n      LoginBuat, TanggalBuat)\n      values\n      ('" . KodeID . "', 0, '{$pmbid}', '{$pmb['PMBPeriodID']}',\n      0, {$BIPOTNamaID}, '{$bn['Nama']}', {$bn['TrxID']},\n      {$Jumlah}, {$Besar}, {$Dibayar}, '{$Catatan}',\n      '{$_SESSION['_Login']}', now())";
        $r = _query($s);
    } else {
        die(ErrorMsg('Error', "Mode edit <b>{$md}</b> tidak dikenali.<br />\n    Hubungi Sysadmin untuk informasi lebih lanjut.\n    <hr size=1 color=silver />\n    Opsi: <input type=button name='Tutup' value='Tutup' onClick=\"window.close()\" />"));
    }
    include_once "../{$_SESSION['mnux']}.lib.php";
    HitungUlangBIPOTPMB($pmbid);
    TutupScript($pmbid);
}
예제 #4
0
function ProsesBIPOT($gels, $gel)
{
    $PMBID = sqling($_REQUEST['PMBID']);
    $pmb = GetFields('pmb', "KodeID='" . KodeID . "' and PMBID", $PMBID, '*');
    if (empty($pmb)) {
        die(ErrorMsg('Error', "Data Cama dengan nomer PMB: <b>{$PMBID}</b> tidak ditemukan.<br />\r\n      Hubungi Sysadmin untuk informasi lebih lanjut.\r\n      <hr size=1 color=silver />\r\n      <input type=button name='Kembali' value='Kembali'\r\n        onClick=\"location='{$_SESSION['mnux']}&gos='\" />"));
    }
    // Ambil BIPOT-nya
    $s = "select * \r\n    from bipot2 \r\n    where BIPOTID = '{$pmb['BIPOTID']}'\r\n      and Otomatis = 'Y'\r\n\t  and PerMataKuliah = 'N'\r\n\t  and PerSKS = 'N'\r\n\t  and PerLab = 'N'\r\n      and NA = 'N'\r\n    order by TrxID, Prioritas";
    $r = _query($s);
    while ($w = _fetch_array($r)) {
        $oke = true;
        // Apakah sesuai dengan status awalnya?
        $pos = strpos($w['StatusAwalID'], "." . $pmb['StatusAwalID'] . ".");
        $oke = $oke && !($pos === false);
        // Apakah sesuai dengan status mahasiswanya?
        $pos = strpos($w['StatusMhswID'], ".A.");
        $oke = $oke && !($pos === false);
        // Apakah grade-nya?
        if ($oke) {
            if ($w['GunakanGradeNilai'] == 'Y') {
                $pos = strpos($w['GradeNilai'], "." . $pmb['GradeNilai'] . ".");
                $oke = $oke && !($pos === false);
            }
        }
        if ($oke) {
            if ($w['GunakanGradeIPK'] == 'Y') {
                $oke = false;
            }
        }
        // Apakah dimulai pada sesi 1?
        if ($oke) {
            if ($w['MulaiSesi'] <= 1) {
                $oke = true;
            } else {
                $oke = false;
            }
        }
        // Simpan data
        if ($oke) {
            // Cek, sudah ada atau belum? Kalau sudah, ambil ID-nya
            $ada = GetaField('bipotmhsw', "KodeID='" . KodeID . "' and PMBID = '{$pmb['PMBID']}'\r\n        and TahunID='{$pmb['PMBPeriodID']}' and BIPOT2ID", $w['BIPOT2ID'], "BIPOTMhswID") + 0;
            // Cek apakah memakai script atau tidak?
            if ($w['GunakanScript'] == 'Y') {
                BipotGunakanScript($pmb, '', $w, $ada, 0);
            } else {
                // Jika tidak ada duplikasi, maka akan di-insert. Tapi jika sudah ada, maka dicuekin aja.
                if ($ada == 0) {
                    // Simpan
                    $Nama = GetaField('bipotnama', 'BIPOTNamaID', $w['BIPOTNamaID'], 'Nama');
                    // Cek Jumlah jika memiliki beasiswa
                    /*if(GetaField('bipotnama', 'BIPOTNamaID', $w['BIPOTNamaID'], 'DipotongBeasiswa') == 'Y')
                      { $Jumlah = (1 - ($pmb['Diskon']/100))*$w['Jumlah'];
                      }
                      else
                      { $Jumlah = $w['Jumlah'];
                      }*/
                    $s1 = "insert into bipotmhsw\r\n            (KodeID, COAID, PMBMhswID, PMBID, TahunID,\r\n            BIPOT2ID, BIPOTNamaID, Nama, TrxID,\r\n            Jumlah, Besar, Dibayar,\r\n            Catatan, NA,\r\n            LoginBuat, TanggalBuat)\r\n            values\r\n            ('" . KodeID . "', '{$w['COAID']}', 0, '{$pmb['PMBID']}', '{$pmb['PMBPeriodID']}',\r\n            '{$w['BIPOT2ID']}', '{$w['BIPOTNamaID']}', '{$Nama}', '{$w['TrxID']}',\r\n            1, '{$w['Jumlah']}', 0,\r\n            'Auto', 'N',\r\n            '{$_SESSION['_Login']}', now())";
                    $r1 = _query($s1);
                }
                // end $ada=0
            }
            // end if $ada
        }
        // end if $oke
    }
    // end while
    HitungUlangBIPOTPMB($PMBID);
    BerhasilSimpan("?mnux={$_SESSION['mnux']}&gos=MhswBaruEdt&PMBID={$pmb['PMBID']}", 100);
}
예제 #5
0
function Simpan($pmbid, $md, $bayar, $bipotmhsw)
{
    $RekeningID = sqling($_REQUEST['RekeningID']);
    $Tanggal = "{$_REQUEST['Tanggal_y']}-{$_REQUEST['Tanggal_m']}-{$_REQUEST['Tanggal_d']}";
    $Bank = sqling($_REQUEST['Bank']);
    $BuktiSetoran = sqling($_REQUEST['BuktiSetoran']);
    $Keterangan = sqling($_REQUEST['Keterangan']);
    $CNT = $_REQUEST['CNT'] + 0;
    // Cek jika tidak ada detailnya
    if ($CNT == 0) {
        die(ErrorMsg('Error', "Tidak ada detail biaya.<br />\r\n      Data tidak bisa disimpan.<br />\r\n      Hubungi Sysadmin untuk informasi lebih lanjut.\r\n      <hr size=1 color=silver />\r\n      Opsi: <input type=button name='Tutup' value='Tutup' onClick=\"window.close()\" />"));
    }
    // Cek dulu jumlah yg dibayarkan
    $jml = 0;
    $PembayaranValid = TRUE;
    for ($i = 1; $i <= $CNT; $i++) {
        $jml += $_REQUEST['BYR_' . $i] + 0;
        $byr = $_REQUEST['BYR_' . $i] + 0;
        $subttl = $_REQUEST['SUBTTL_' . $i] + 0;
        //if ($subttl < $byr)
        //$PembayaranValid = FALSE;
    }
    if ($jml <= 0) {
        die(ErrorMsg('Error', "Jumlah yang Anda bayarkan: <font size=+1>{$jml}</font>.<br />\r\n      Tidak ada yang perlu dibayarkan.<br />\r\n      Hubungi Sysadmin untuk informasi lebih lanjut.\r\n      <hr size=1 color=silver />\r\n      Opsi: <input type=button name='Tutup' value='Tutup' onClick=\"window.close()\" /"));
    }
    if ($PembayaranValid == FALSE) {
        die(ErrorMsg('Error', "Pembayaran: <font size=+1>TIDAK VALID</font>.<br />\r\n      Pembayaran tidak boleh melebihi Sub Total.<br />\r\n      Hubungi Sysadmin untuk informasi lebih lanjut.\r\n      <hr size=1 color=silver />\r\n      Opsi: <input type=button name='Tutup' value='Tutup' onClick=\"window.close()\" /"));
    }
    $pmb = GetFields('pmb', "KodeID='" . KodeID . "' and PMBID", $pmbid, '*');
    // Oke, mulai simpan datanya
    // 1. Ambil nomer terakhir yang ada
    $BayarMhswID = GetNextBPM();
    // 2. Buat header bukti pembayaran
    $s = "insert into bayarmhsw\r\n    (BayarMhswID, TahunID, KodeID,\r\n    RekeningID, PMBID, TrxID, PMBMhswID,\r\n    Bank, BuktiSetoran, Tanggal,\r\n    Jumlah, Keterangan,\r\n    LoginBuat, TanggalBuat)\r\n    values\r\n    ('{$BayarMhswID}', '{$pmb['PMBPeriodID']}', '" . KodeID . "',\r\n    '{$RekeningID}', '{$pmb['PMBID']}', 1, 0,\r\n    '{$Bank}', '{$BuktiSetoran}', '{$Tanggal}',\r\n    {$jml}, '{$Keterangan}',\r\n    '{$_SESSION['_LoginBuat']}', now())";
    $r = _query($s);
    // 3. Simpan detailnya
    for ($i = 1; $i <= $CNT; $i++) {
        $_j = $_REQUEST['BYR_' . $i] + 0;
        if ($_j > 0) {
            // Simpan
            $id = $_REQUEST['BYRID_' . $i] + 0;
            $byrmhsw = GetFields('bipotmhsw', "BIPOTMhswID", $id, '*');
            // Simpan dulu detail pembayarannya
            $s = "insert into bayarmhsw2\r\n        (BayarMhswID, BIPOTMhswID, BIPOTNamaID, Jumlah,\r\n        LoginBuat, TanggalBuat)\r\n        values\r\n        ('{$BayarMhswID}', {$id}, '{$byrmhsw['BIPOTNamaID']}', {$_j},\r\n        '{$_SESSION['_Login']}', now())";
            $r = _query($s);
            // Update detail biayanya
            $s = "update bipotmhsw\r\n        set Dibayar = Dibayar + {$_j}\r\n        where BIPOTMhswID = {$id}";
            $r = _query($s);
        }
    }
    HitungUlangBIPOTPMB($pmbid);
    TutupScript($pmbid);
}
예제 #6
0
function Simpan($pmbid, $md, $id, $tagihanid)
{
    $BIPOTNamaID = $_REQUEST['BIPOTNamaID'] + 0;
    $Jumlah = $_REQUEST['Jumlah'] + 0;
    $Besar = $_REQUEST['Besar'] + 0;
    $Dibayar = $_REQUEST['Dibayar'] + 0;
    $Catatan = sqling($_REQUEST['Catatan']);
    $tagihanid = $_REQUEST['tagihanid'];
    //$cek_tagihan = GetaField("bipotmhswx", "MhswID='$MhswID' and TahunID='$TahunID' and NA='N' and TrxID", 1, "TagihanID", "order by BIPOTMhswID desc");
    $cek_sisa = GetaField("bipotmhsw", "NA='N' and TagihanID", $tagihanid, "sum(TrxID*Jumlah*Besar)");
    $trxBIPOTID = GetaField('pmb', "PMBID", $pmbid, 'BIPOTID');
    $trxbipot = GetaField('bipot2', "BIPOTID = '" . $trxBIPOTID . "' and BIPOTNamaID", $BIPOTNamaID, "TrxID");
    //echo $trxbipot;
    if ($trxbipot < 0 && !empty($tagihanid) && $cek_sisa - $Jumlah * $Besar < 0) {
        die(ErrorMsg('Stop', "Potongan tidak boleh melebihi biaya.<br />\r\n    Hubungi Sysadmin untuk informasi lebih lanjut.\r\n    <hr size=1 color=silver />\r\n    Opsi: <input type=button name='Tutup' value='Tutup' onClick=\"window.close()\" />"));
    }
    // Simpan
    if ($md == 0) {
        $s = "update bipotmhsw set Jumlah = '{$Jumlah}', Besar  = '{$Besar}', Dibayar = '{$Dibayar}', Catatan = '{$Catatan}', LoginEdit = '{$_SESSION['_Login']}', TanggalEdit = now() where BIPOTMhswID = '{$id}' ";
        $r = _query($s);
        $s = "update bayarmhsw2 set Jumlah = '{$Dibayar}' where BIPOTMhswID = '{$id}' and BIPOTNamaID = '{$BIPOTNamaID}'";
        $r = _query($s);
        $BayarMhswID = GetaField('bayarmhsw2', "BIPOTMhswID = '{$id}' and BIPOTNamaID", $BIPOTNamaID, 'BayarMhswID');
        $TotalDibayar = GetaField('bayarmhsw2', "BIPOTMhswID = '{$id}' and NA = 'N' and BIPOTNamaID", $BIPOTNamaID, 'sum(Jumlah)') + 0;
        $s = "update bayarmhsw set Jumlah = {$TotalDibayar} where BayarMhswID = '{$BayarMhswID}'";
        $r = _query($s);
    } elseif ($md == 1) {
        $BIPOTID = GetaField('pmb', "PMBID", $pmbid, 'BIPOTID');
        $pmb = GetFields('pmb', "KodeID='" . KodeID . "' and PMBID", $pmbid, '*');
        $bn = GetFields('bipotnama', 'BIPOTNamaID', $BIPOTNamaID, '*');
        $b2 = GetFields('bipot2', "BIPOTID = '{$BIPOTID}' and BIPOTNamaID", $BIPOTNamaID, '*');
        $s = "insert into bipotmhsw\r\n      (KodeID, PMBMhswID, PMBID, TagihanID, TahunID,\r\n      BIPOT2ID, BIPOTNamaID, Nama, TrxID,\r\n      Jumlah, Besar, Dibayar, Catatan,\r\n      LoginBuat, TanggalBuat)\r\n      values\r\n      ('" . KodeID . "', 0, '{$pmbid}', '{$tagihanid}','{$pmb['PMBPeriodID']}',\r\n      '{$b2['BIPOT2ID']}', {$BIPOTNamaID}, '{$bn['Nama']}', {$bn['TrxID']},\r\n      {$Jumlah}, {$Besar}, {$Dibayar}, '{$Catatan}',\r\n      '{$_SESSION['_Login']}', now())";
        $r = _query($s);
        //22 juli 2013
        //jika insert tagihan
        //        $idt = mysql_insert_id();
        //        if ($bn[TrxID] == 1) {
        //            $s = "update bipotmhsw set TagihanID = '" . $idt . "' where BIPOTMhswID='" . $idt . "'";
        //            $r = _query($s);
        //        } else {
        //            //jika insert potongan
        //            $cek_tagihan = GetaField("bipotmhsw", "PMBID='$pmbid' and NA='N' and TrxID", 1, "TagihanID", "order by BIPOTMhswID desc");
        //            $s = "update bipotmhsw set TagihanID = '" . $cek_tagihan . "' where BIPOTMhswID='" . $idt . "'";
        //            $r = _query($s);
        //        }
    } else {
        die(ErrorMsg('Error', "Mode edit <b>{$md}</b> tidak dikenali.<br />\r\n    Hubungi Sysadmin untuk informasi lebih lanjut.\r\n    <hr size=1 color=silver />\r\n    Opsi: <input type=button name='Tutup' value='Tutup' onClick=\"window.close()\" />"));
    }
    include_once "../{$_SESSION['mnux']}.lib.php";
    HitungUlangBIPOTPMB($pmbid);
    TutupScript($pmbid);
}