1141 lines
63 KiB
HTML
1141 lines
63 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<title>RSAB Sys - Registrasi</title>
|
|
<link
|
|
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css"
|
|
rel="stylesheet"
|
|
/>
|
|
<link
|
|
rel="stylesheet"
|
|
href="https://cdn.datatables.net/2.2.2/css/dataTables.bootstrap5.css"
|
|
/>
|
|
<link
|
|
href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css"
|
|
rel="stylesheet"
|
|
/>
|
|
|
|
<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
|
|
<script src="https://cdn.datatables.net/2.2.2/js/dataTables.js"></script>
|
|
<script src="https://cdn.datatables.net/2.2.2/js/dataTables.bootstrap5.js"></script>
|
|
<script src="https://cdn.jsdelivr.net/npm/moment@2.29.1/moment.min.js"></script>
|
|
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
|
|
<style>
|
|
body {
|
|
overflow-x: hidden;
|
|
}
|
|
.sidebar {
|
|
min-height: 100vh;
|
|
background: #343a40;
|
|
color: #fff;
|
|
}
|
|
.sidebar a {
|
|
color: #adb5bd;
|
|
text-decoration: none;
|
|
display: block;
|
|
padding: 10px;
|
|
}
|
|
.sidebar a:hover {
|
|
background: #495057;
|
|
color: #fff;
|
|
}
|
|
.header {
|
|
background: #f8f9fa;
|
|
padding: 10px 20px;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
}
|
|
.content {
|
|
padding: 20px;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="d-flex">
|
|
<!-- Sidebar -->
|
|
<div class="sidebar p-3">
|
|
<h4>RSAB Sys</h4>
|
|
<hr />
|
|
<div class="accordion" id="sidebarAccordion">
|
|
<!-- Master Data -->
|
|
<div class="accordion-item bg-transparent border-0">
|
|
<h2 class="accordion-header">
|
|
<button
|
|
class="accordion-button collapsed bg-transparent text-white"
|
|
type="button"
|
|
data-bs-toggle="collapse"
|
|
data-bs-target="#masterDataCollapse"
|
|
>
|
|
Master Data
|
|
</button>
|
|
</h2>
|
|
<div
|
|
id="masterDataCollapse"
|
|
class="accordion-collapse collapse"
|
|
data-bs-parent="#sidebarAccordion"
|
|
>
|
|
<div class="accordion-body p-0">
|
|
<a href="./users">User</a>
|
|
<a href="./pegawai">Pegawai</a>
|
|
<a href="./tindakan">Tindakan</a>
|
|
<a href="./pasien">Pasien</a>
|
|
<a href="./ruangpelayanan">Ruang Pelayanan</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Transaksi -->
|
|
<div class="accordion-item bg-transparent border-0">
|
|
<h2 class="accordion-header">
|
|
<button
|
|
class="accordion-button collapsed bg-transparent text-white"
|
|
type="button"
|
|
data-bs-toggle="collapse"
|
|
data-bs-target="#transaksiCollapse"
|
|
>
|
|
Transaksi
|
|
</button>
|
|
</h2>
|
|
<div
|
|
id="transaksiCollapse"
|
|
class="accordion-collapse collapse"
|
|
data-bs-parent="#sidebarAccordion"
|
|
>
|
|
<div class="accordion-body p-0">
|
|
<a href="./registrasi">Registrasi</a>
|
|
<a href="./transaksi">Transaksi</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Laporan -->
|
|
<div class="accordion-item bg-transparent border-0">
|
|
<h2 class="accordion-header">
|
|
<button
|
|
class="accordion-button collapsed bg-transparent text-white"
|
|
type="button"
|
|
data-bs-toggle="collapse"
|
|
data-bs-target="#laporanCollapse"
|
|
>
|
|
Laporan
|
|
</button>
|
|
</h2>
|
|
<div
|
|
id="laporanCollapse"
|
|
class="accordion-collapse collapse"
|
|
data-bs-parent="#sidebarAccordion"
|
|
>
|
|
<div class="accordion-body p-0">
|
|
<a href="./laporan_jumlah_pasien"
|
|
>Laporan Jumlah Pasien Mendaftar</a
|
|
>
|
|
<a href="./laporan_pendapatan"
|
|
>Laporan Pendapatan Perhari</a
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="flex-grow-1">
|
|
<div class="header">
|
|
<h5>Data Registrasi</h5>
|
|
<div class="dropdown">
|
|
<button
|
|
class="btn btn-light dropdown-toggle"
|
|
type="button"
|
|
id="profileDropdown"
|
|
data-bs-toggle="dropdown"
|
|
aria-expanded="false"
|
|
>
|
|
<i class="bi bi-person-circle"></i> Profile
|
|
</button>
|
|
<ul
|
|
class="dropdown-menu dropdown-menu-end"
|
|
aria-labelledby="profileDropdown"
|
|
>
|
|
<li>
|
|
<a class="dropdown-item" href="#">Profile</a>
|
|
</li>
|
|
<li><hr class="dropdown-divider" /></li>
|
|
<li>
|
|
<a
|
|
class="dropdown-item"
|
|
href="#"
|
|
id="logoutButton"
|
|
>Logout</a
|
|
>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="content">
|
|
<div class="d-flex justify-content-between">
|
|
<h4>Data Registrasi</h4>
|
|
<button
|
|
type="button"
|
|
id="addButton"
|
|
class="btn btn-primary"
|
|
>
|
|
Daftarkan Pasien
|
|
</button>
|
|
</div>
|
|
<table
|
|
id="data-table"
|
|
class="table table-striped table-hover table-bordered mt-3"
|
|
>
|
|
<thead>
|
|
<tr>
|
|
<th>No</th>
|
|
<th>No.MR Pasien</th>
|
|
<th>Nama Pasien</th>
|
|
<th>Tanggal Lahir</th>
|
|
<th>Jenis Kelamin</th>
|
|
<th>Tanggal Berobat</th>
|
|
<th>Dokter</th>
|
|
<th>Nama Asuransi (No. Asuransi)</th>
|
|
<th>Ruang Pelayanan</th>
|
|
<th>Aksi</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody id="registrasiTable"></tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div
|
|
class="modal fade"
|
|
id="modal-show"
|
|
tabindex="-1"
|
|
aria-labelledby="exampleModalLabel"
|
|
aria-hidden="true"
|
|
>
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h1 class="modal-title fs-5" id="titleModal"></h1>
|
|
<button
|
|
type="button"
|
|
class="btn-close"
|
|
data-bs-dismiss="modal"
|
|
aria-label="Close"
|
|
></button>
|
|
</div>
|
|
<div class="modal-body"></div>
|
|
<div class="modal-footer"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
|
|
<script>
|
|
$("#logoutButton").click(function () {
|
|
localStorage.removeItem("accessToken");
|
|
localStorage.removeItem("fullname");
|
|
window.location.href = "/login.html";
|
|
});
|
|
|
|
$(document).ready(function () {
|
|
var accessToken = localStorage.getItem("accessToken");
|
|
if (!accessToken) {
|
|
window.location.href = "./../index.html";
|
|
}
|
|
});
|
|
|
|
$(document).ready(function () {
|
|
var accessToken = localStorage.getItem("accessToken");
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/registrasi/",
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let isiData = "";
|
|
if (result.metadata.code === 200) {
|
|
let registrasiData = result.response;
|
|
$.each(
|
|
registrasiData,
|
|
function (index, registrasi) {
|
|
isiData += `<tr>
|
|
<td>${index + 1}</td>
|
|
<td>${registrasi.mspasien.mrpasien}</td>
|
|
<td>${registrasi.mspasien.namapasien}</td>
|
|
<td>${moment(
|
|
registrasi.tanggallahir
|
|
).format("DD-MM-YYYY")}</td>
|
|
<td>${registrasi.mspasien.jeniskelamin}</td>
|
|
<td>${moment(
|
|
registrasi.tanggalregistrasi
|
|
)}</td>
|
|
<td>${registrasi.mspegawai.namapegawai}</td>
|
|
<td>${
|
|
registrasi.msasuransi.namaasuransi
|
|
} (${registrasi.nomorkartuasuransi})</td>
|
|
<td>${
|
|
registrasi.msruangpelayanan
|
|
.namaruangpelayanan
|
|
}</td>
|
|
<td>
|
|
<button type="button" id="deleteButton" class="btn btn-sm btn-danger" data-registrasi-id="${
|
|
registrasi.idregistrasi
|
|
}">Batalkan</button>
|
|
<button type="button" id="editButton" class="btn btn-sm btn-warning" data-registrasi-id="${
|
|
registrasi.idregistrasi
|
|
}">Edit</button>
|
|
<button type="button" id="detailButton" class="btn btn-sm btn-info" data-registrasi-id="${
|
|
registrasi.idregistrasi
|
|
}">Detail Tindakan</button>
|
|
<button type="button" id="tambahTindakanButton" class="btn btn-sm btn-success" data-registrasi-id="${
|
|
registrasi.idregistrasi
|
|
}">Tambah Tindakan</button>
|
|
</td>
|
|
</tr>`;
|
|
}
|
|
);
|
|
} else {
|
|
isiData = `<tr><td colspan="6">${result.metadata.message}</td></tr>`;
|
|
}
|
|
$("#registrasiTable").html(isiData);
|
|
|
|
$(document).on("click", "#editButton", function (e) {
|
|
var registrasiId = $(this).data("registrasi-id");
|
|
$.ajax({
|
|
url:
|
|
"http://localhost:4400/api/registrasi/registrasi_id/" +
|
|
registrasiId,
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
if (result.metadata.code === 200) {
|
|
let registrasi = result.response;
|
|
|
|
$("#titleModal").text(
|
|
"Edit Registrasi"
|
|
);
|
|
$("#modal-show").modal("show");
|
|
$("#modal-show .modal-body").html(
|
|
`
|
|
<form id="editForm">
|
|
<div class="mb-3">
|
|
<label for="namapasien" class="form-label">Nama Pasien</label>
|
|
<input type="text" class="form-control" id="namapasien" value="${
|
|
registrasi.mspasien
|
|
.namapasien
|
|
}" readonly disabled>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="tanggallahir" class="form-label">Tanggal Lahir</label>
|
|
<input type="text" class="form-control" id="tanggallahir" value="${moment(
|
|
registrasi.mspasien
|
|
.tanggallahir
|
|
).format(
|
|
"DD-MM-YYYY"
|
|
)}" readonly disabled>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="jeniskelamin" class="form-label">Jenis Kelamin</label>
|
|
<input type="text" class="form-control" id="jeniskelamin" value="${
|
|
registrasi.mspasien
|
|
.jeniskelamin
|
|
}" readonly disabled>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="tanggalregistrasi" class="form-label">Tanggal Berobat</label>
|
|
<input type="date" class="form-control" id="tanggalregistrasi" value="${moment(
|
|
registrasi.tanggalregistrasi
|
|
).format("YYYY-MM-DD")}">
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="idpegawai" class="form-label">Nama Pegawai</label>
|
|
<select class="form-select" id="idpegawai">
|
|
</select>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="idasuransi" class="form-label">Nama Asuransi</label>
|
|
<select class="form-select" id="idasuransi">
|
|
</select>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="nomorkartuasuransi" class="form-label">Nomor Kartu Asuransi</label>
|
|
<input type="text" class="form-control" id="nomorkartuasuransi" value="${
|
|
registrasi.nomorkartuasuransi
|
|
}">
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="idruangpelayanan" class="form-label">Nama Ruang Pelayanan</label>
|
|
<select class="form-select" id="idruangpelayanan">
|
|
</select>
|
|
</div>
|
|
<input type="hidden" id="idpasien" value="${
|
|
registrasi.idpasien
|
|
}">
|
|
</form>
|
|
`
|
|
);
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/pegawai",
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization:
|
|
"Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let dataPegawai = "";
|
|
if (
|
|
result.metadata.code === 200
|
|
) {
|
|
let pegawai =
|
|
result.response;
|
|
let selectedPegawai = "";
|
|
for (
|
|
let i = 0;
|
|
i < pegawai.length;
|
|
i++
|
|
) {
|
|
if (
|
|
pegawai[i]
|
|
.idpegawai ==
|
|
registrasi.idpegawai
|
|
) {
|
|
selected =
|
|
"selected";
|
|
} else {
|
|
selected = "";
|
|
}
|
|
|
|
dataPegawai += `<option ${selected} value="${pegawai[i].idpegawai}">${pegawai[i].namapegawai}</option>`;
|
|
}
|
|
|
|
$("#idpegawai").html(
|
|
dataPegawai
|
|
);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert(
|
|
"Error: " + xhr.responseText
|
|
);
|
|
},
|
|
});
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/asuransi",
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization:
|
|
"Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let dataAsuransi = "";
|
|
if (
|
|
result.metadata.code === 200
|
|
) {
|
|
let asuransi =
|
|
result.response;
|
|
let selectedasuransi = "";
|
|
for (
|
|
let i = 0;
|
|
i < asuransi.length;
|
|
i++
|
|
) {
|
|
if (
|
|
asuransi[i]
|
|
.idasuransi ==
|
|
registrasi.idasuransi
|
|
) {
|
|
selected =
|
|
"selected";
|
|
} else {
|
|
selected = "";
|
|
}
|
|
|
|
dataAsuransi += `<option ${selected} value="${asuransi[i].idasuransi}">${asuransi[i].namaasuransi}</option>`;
|
|
}
|
|
|
|
$("#idasuransi").html(
|
|
dataAsuransi
|
|
);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert(
|
|
"Error: " + xhr.responseText
|
|
);
|
|
},
|
|
});
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/ruangpelayanan",
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization:
|
|
"Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let dataRuangpelayanan = "";
|
|
if (
|
|
result.metadata.code === 200
|
|
) {
|
|
let ruangpelayanan =
|
|
result.response;
|
|
let selectedruangpelayanan =
|
|
"";
|
|
for (
|
|
let i = 0;
|
|
i <
|
|
ruangpelayanan.length;
|
|
i++
|
|
) {
|
|
if (
|
|
ruangpelayanan[i]
|
|
.idruangpelayanan ==
|
|
registrasi.idruangpelayanan
|
|
) {
|
|
selected =
|
|
"selected";
|
|
} else {
|
|
selected = "";
|
|
}
|
|
|
|
dataRuangpelayanan += `<option ${selected} value="${ruangpelayanan[i].idruangpelayanan}">${ruangpelayanan[i].namaruangpelayanan}</option>`;
|
|
}
|
|
|
|
$("#idruangpelayanan").html(
|
|
dataRuangpelayanan
|
|
);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert(
|
|
"Error: " + xhr.responseText
|
|
);
|
|
},
|
|
});
|
|
|
|
$("#modal-show .modal-footer").html(
|
|
`
|
|
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
|
|
<button type="button" id="updateButton" class="btn btn-primary">Update</button>
|
|
`
|
|
);
|
|
|
|
$("#updateButton").click(function () {
|
|
let registrasiId =
|
|
registrasi.idregistrasi;
|
|
let idpasien = $("#idpasien").val();
|
|
let tanggalregistrasi =
|
|
$("#tanggalregistrasi").val();
|
|
let nomorkartuasuransi = $(
|
|
"#nomorkartuasuransi"
|
|
).val();
|
|
let idasuransi =
|
|
$("#idasuransi").val();
|
|
let idpegawai =
|
|
$("#idpegawai").val();
|
|
let idruangpelayanan =
|
|
$("#idruangpelayanan").val();
|
|
|
|
$.ajax({
|
|
url:
|
|
"http://localhost:4400/api/registrasi/registrasi_id/" +
|
|
registrasiId,
|
|
method: "PUT",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization:
|
|
"Bearer " + accessToken,
|
|
},
|
|
data: JSON.stringify({
|
|
idpasien: parseInt(
|
|
idpasien,
|
|
10
|
|
),
|
|
tanggalregistrasi:
|
|
tanggalregistrasi,
|
|
nomorkartuasuransi:
|
|
nomorkartuasuransi,
|
|
idasuransi: parseInt(
|
|
idasuransi,
|
|
10
|
|
),
|
|
idpegawai: parseInt(
|
|
idpegawai,
|
|
10
|
|
),
|
|
idruangpelayanan: parseInt(
|
|
idruangpelayanan,
|
|
10
|
|
),
|
|
}),
|
|
success: function (result) {
|
|
if (
|
|
result.metadata.code ===
|
|
200
|
|
) {
|
|
alert(
|
|
result.metadata
|
|
.message
|
|
);
|
|
location.reload();
|
|
} else {
|
|
alert(
|
|
result.metadata
|
|
.message
|
|
);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert(
|
|
"Error: " +
|
|
xhr.responseText
|
|
);
|
|
},
|
|
});
|
|
});
|
|
} else {
|
|
alert(result.metadata.msg);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert("Error: " + xhr.responseText);
|
|
},
|
|
});
|
|
});
|
|
|
|
$(document).on("click", "#deleteButton", function (e) {
|
|
var registrasiId = $(this).data("registrasi-id");
|
|
e.preventDefault();
|
|
var konfirmasi = confirm(
|
|
"Apakah Anda yakin ingin menghapus Registrasi ini?"
|
|
);
|
|
if (konfirmasi) {
|
|
$.ajax({
|
|
url:
|
|
"http://localhost:4400/api/registrasi/registrasi_id/" +
|
|
registrasiId,
|
|
method: "DELETE",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
if (result.metadata.code === 200) {
|
|
alert(result.metadata.message);
|
|
location.reload();
|
|
} else {
|
|
alert(result.metadata.message);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert("Error: " + xhr.responseText);
|
|
},
|
|
});
|
|
}
|
|
});
|
|
|
|
$(document).on("click", "#detailButton", function (e) {
|
|
var registrasiId = $(this).data("registrasi-id");
|
|
$("#titleModal").text("Detail Registrasi");
|
|
$.ajax({
|
|
url:
|
|
"http://localhost:4400/api/transaksi/registrasi_id/" +
|
|
registrasiId,
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let templateTabel = `<table class='table table-striped table-hover table-bordered mt-3'>
|
|
<thead>
|
|
<tr>
|
|
<th>No</th>
|
|
<th>Nama Tindakan</th>
|
|
<th>Tarif Tindakan</th>
|
|
<th>Jumlah Tindakan</th>
|
|
<th>Total Tarif</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>`;
|
|
if (
|
|
result.metadata.code === 200 &&
|
|
result.response.length > 0
|
|
) {
|
|
$.each(
|
|
result.response,
|
|
function (index, item) {
|
|
templateTabel += ` <tr>
|
|
<td>${index + 1}</td>
|
|
<td>${
|
|
item.mstindakan.namatindakan
|
|
}</td>
|
|
<td>${
|
|
item.mstindakan
|
|
.tariftindakan
|
|
}</td>
|
|
<td>${item.jmltindakan}</td>
|
|
<td>${
|
|
item.mstindakan
|
|
.tariftindakan *
|
|
item.jmltindakan
|
|
}</td>
|
|
</tr>`;
|
|
}
|
|
);
|
|
} else {
|
|
templateTabel += `<tr>
|
|
<td class="text-center" colspan="5">Data Tindakan Kosong</td>
|
|
</tr>`;
|
|
}
|
|
|
|
templateTabel += `</tbody>
|
|
</table>`;
|
|
|
|
$("#modal-show .modal-body").html(
|
|
templateTabel
|
|
);
|
|
},
|
|
error: function (xhr) {
|
|
alert("Error: " + xhr.responseText);
|
|
},
|
|
});
|
|
|
|
$("#modal-show").modal("show");
|
|
});
|
|
|
|
$(document).on("click", "#tambahTindakanButton", function (e) {
|
|
var registrasiId = $(this).data("registrasi-id");
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/registrasi/registrasi_id/" + registrasiId,
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
if (result.metadata.code === 200) {
|
|
let registrasi = result.response;
|
|
|
|
$("#titleModal").text(
|
|
"Tambah Tindakan Registrasi"
|
|
);
|
|
$("#modal-show").modal("show");
|
|
$("#modal-show .modal-body").html(
|
|
`
|
|
<form id="editForm">
|
|
<div class="mb-3">
|
|
<label for="namapasien" class="form-label">Nama Pasien</label>
|
|
<input type="text" class="form-control" id="namapasien" value="${
|
|
registrasi.mspasien
|
|
.namapasien
|
|
}" readonly disabled>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="tanggallahir" class="form-label">Tanggal Lahir</label>
|
|
<input type="text" class="form-control" id="tanggallahir" value="${moment(
|
|
registrasi.mspasien
|
|
.tanggallahir
|
|
).format(
|
|
"DD-MM-YYYY"
|
|
)}" readonly disabled>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="jeniskelamin" class="form-label">Jenis Kelamin</label>
|
|
<input type="text" class="form-control" id="jeniskelamin" value="${
|
|
registrasi.mspasien
|
|
.jeniskelamin
|
|
}" readonly disabled>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="tanggalregistrasi" class="form-label">Tanggal Berobat</label>
|
|
<input type="text" class="form-control" id="tanggalregistrasi" value="${moment(
|
|
registrasi.tanggalregistrasi
|
|
).format(
|
|
"YYYY-MM-DD"
|
|
)}" readonly disabled>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="idtindakan" class="form-label">Nama Tindakan</label>
|
|
<select class="form-select" id="idtindakan">
|
|
</select>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="jmltindakan" class="form-label">Jumlah Tindakan</label>
|
|
<input type="number" class="form-control" id="jmltindakan" required>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="idpegawai" class="form-label">Nama Pegawai</label>
|
|
<select class="form-select" id="idpegawai">
|
|
</select>
|
|
</div>
|
|
</form>
|
|
`
|
|
);
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/pegawai",
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization:
|
|
"Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let dataPegawai = "";
|
|
if (
|
|
result.metadata.code ===
|
|
200
|
|
) {
|
|
let pegawai =
|
|
result.response;
|
|
for (
|
|
let i = 0;
|
|
i < pegawai.length;
|
|
i++
|
|
) {
|
|
dataPegawai += `<option value="${pegawai[i].idpegawai}">${pegawai[i].namapegawai}</option>`;
|
|
}
|
|
|
|
$("#idpegawai").html(
|
|
dataPegawai
|
|
);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert(
|
|
"Error: " +
|
|
xhr.responseText
|
|
);
|
|
},
|
|
});
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/tindakan",
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization:
|
|
"Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let dataTindakan = "";
|
|
if (
|
|
result.metadata.code ===
|
|
200
|
|
) {
|
|
let tindakan =
|
|
result.response;
|
|
for (
|
|
let i = 0;
|
|
i < tindakan.length;
|
|
i++
|
|
) {
|
|
dataTindakan += `<option value="${tindakan[i].idtindakan}">${tindakan[i].namatindakan}</option>`;
|
|
}
|
|
|
|
$("#idtindakan").html(
|
|
dataTindakan
|
|
);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert(
|
|
"Error: " +
|
|
xhr.responseText
|
|
);
|
|
},
|
|
});
|
|
|
|
$("#modal-show .modal-footer").html(
|
|
`
|
|
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
|
|
<button type="button" id="tambahTindakan" class="btn btn-primary">Submit</button>
|
|
`
|
|
);
|
|
|
|
$("#tambahTindakan").click(
|
|
function () {
|
|
let idtindakan = $("#idtindakan").val();
|
|
let jmltindakan = $("#jmltindakan").val();
|
|
let idpegawai = $("#idpegawai").val();
|
|
|
|
$.ajax({
|
|
url:
|
|
"http://localhost:4400/api/transaksi/",
|
|
method: "POST",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
data: JSON.stringify({
|
|
idtindakan: parseInt(idtindakan, 10),
|
|
jmltindakan: parseInt(jmltindakan, 10),
|
|
idpegawai: parseInt(idpegawai, 10),
|
|
idregistrasi: parseInt(registrasiId, 10),
|
|
}),
|
|
success: function (
|
|
result
|
|
) {
|
|
if (
|
|
result.metadata
|
|
.code ===
|
|
200
|
|
) {
|
|
alert(
|
|
result
|
|
.metadata
|
|
.message
|
|
);
|
|
location.reload();
|
|
} else {
|
|
alert(
|
|
result
|
|
.metadata
|
|
.message
|
|
);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert(
|
|
"Error: " +
|
|
xhr.responseText
|
|
);
|
|
},
|
|
});
|
|
}
|
|
);
|
|
} else {
|
|
alert(result.metadata.msg);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert("Error: " + xhr.responseText);
|
|
},
|
|
});
|
|
}
|
|
);
|
|
|
|
$("#data-table").DataTable();
|
|
},
|
|
});
|
|
|
|
$("#addButton").click(function () {
|
|
$("#titleModal").text("Tambah Registrasi");
|
|
$("#modal-show").modal("show");
|
|
$("#modal-show .modal-body").html(
|
|
`
|
|
<form id="addForm">
|
|
<div class="mb-3">
|
|
<label for="pasien" class="form-label">No.MR</label>
|
|
<input type="text" class="form-control" id="idpasien" required>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="tanggalregistrasi" class="form-label">Tanggal Berobat</label>
|
|
<input type="date" class="form-control" id="tanggalregistrasi" required>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="idpegawai" class="form-label">Nama Pegawai</label>
|
|
<select class="form-select" id="idpegawai">
|
|
</select>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="idasuransi" class="form-label">Nama Asuransi</label>
|
|
<select class="form-select" id="idasuransi">
|
|
</select>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="nomorkartuasuransi" class="form-label">Nomor Kartu Asuransi</label>
|
|
<input type="text" class="form-control" id="nomorkartuasuransi">
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="idruangpelayanan" class="form-label">Nama Ruang Pelayanan</label>
|
|
<select class="form-select" id="idruangpelayanan">
|
|
</select>
|
|
</div>
|
|
</form>
|
|
`
|
|
);
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/pegawai",
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let dataPegawai = "";
|
|
if (result.metadata.code === 200) {
|
|
let pegawai = result.response;
|
|
let selectedPegawai = "";
|
|
for (let i = 0; i < pegawai.length; i++) {
|
|
dataPegawai += `<option value="${pegawai[i].idpegawai}">${pegawai[i].namapegawai}</option>`;
|
|
}
|
|
|
|
$("#idpegawai").html(dataPegawai);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert("Error: " + xhr.responseText);
|
|
},
|
|
});
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/asuransi",
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let dataAsuransi = "";
|
|
if (result.metadata.code === 200) {
|
|
let asuransi = result.response;
|
|
let selectedasuransi = "";
|
|
for (let i = 0; i < asuransi.length; i++) {
|
|
dataAsuransi += `<option value="${asuransi[i].idasuransi}">${asuransi[i].namaasuransi}</option>`;
|
|
}
|
|
|
|
$("#idasuransi").html(dataAsuransi);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert("Error: " + xhr.responseText);
|
|
},
|
|
});
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/ruangpelayanan",
|
|
method: "GET",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
success: function (result) {
|
|
let dataRuangpelayanan = "";
|
|
if (result.metadata.code === 200) {
|
|
let ruangpelayanan = result.response;
|
|
let selectedruangpelayanan = "";
|
|
for (
|
|
let i = 0;
|
|
i < ruangpelayanan.length;
|
|
i++
|
|
) {
|
|
dataRuangpelayanan += `<option value="${ruangpelayanan[i].idruangpelayanan}">${ruangpelayanan[i].namaruangpelayanan}</option>`;
|
|
}
|
|
|
|
$("#idruangpelayanan").html(dataRuangpelayanan);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert("Error: " + xhr.responseText);
|
|
},
|
|
});
|
|
|
|
$("#modal-show .modal-footer").html(
|
|
`
|
|
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
|
|
<button type="button" class="btn btn-primary" id="saveButton">Save</button>
|
|
`
|
|
);
|
|
|
|
$("#saveButton").click(function () {
|
|
let idpasien = $("#idpasien").val();
|
|
let idpegawai = $("#idpegawai").val();
|
|
let idasuransi = $("#idasuransi").val();
|
|
let nomorkartuasuransi = $("#nomorkartuasuransi").val();
|
|
let idruangpelayanan = $("#idruangpelayanan").val();
|
|
let tanggalregistrasi = $("#tanggalregistrasi").val();
|
|
|
|
$.ajax({
|
|
url: "http://localhost:4400/api/registrasi/",
|
|
method: "POST",
|
|
contentType: "application/json",
|
|
dataType: "json",
|
|
crossDomain: true,
|
|
headers: {
|
|
Authorization: "Bearer " + accessToken,
|
|
},
|
|
data: JSON.stringify({
|
|
idpasien: parseInt(idpasien, 10),
|
|
idpegawai: parseInt(idpegawai, 10),
|
|
idasuransi: parseInt(idasuransi, 10),
|
|
nomorkartuasuransi: nomorkartuasuransi,
|
|
idruangpelayanan: parseInt(
|
|
idruangpelayanan,
|
|
10
|
|
),
|
|
tanggalregistrasi: tanggalregistrasi,
|
|
}),
|
|
success: function (result) {
|
|
if (result.metadata.code === 200) {
|
|
alert(result.metadata.message);
|
|
$("#modal-show").modal("hide");
|
|
setTimeout(() => {
|
|
window.location.reload();
|
|
}, 1500);
|
|
} else {
|
|
alert(result.metadata.msg);
|
|
}
|
|
},
|
|
error: function (xhr) {
|
|
alert("Error: " + xhr.responseText);
|
|
},
|
|
});
|
|
});
|
|
});
|
|
});
|
|
</script>
|
|
|
|
<link
|
|
href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css"
|
|
rel="stylesheet"
|
|
/>
|
|
</body>
|
|
</html>
|