Add MCU report endpoint and deployment tooling
This commit is contained in:
58
README.md
58
README.md
@@ -1,5 +1,47 @@
|
||||
# CPONE Middleware Go
|
||||
|
||||
## Deploy ke server
|
||||
|
||||
Tool deploy melakukan test, vet, build binary `linux/amd64`, upload melalui
|
||||
`scp`, mengganti binary secara atomik, membuat backup binary sebelumnya, lalu
|
||||
me-restart service melalui systemd.
|
||||
|
||||
Untuk server development yang sudah dikonfigurasi:
|
||||
|
||||
```bash
|
||||
make deploy one@devcpone.aplikasi.web.id
|
||||
```
|
||||
|
||||
Bentuk eksplisit yang setara:
|
||||
|
||||
```bash
|
||||
make deploy DEPLOY_TARGET=one@devcpone.aplikasi.web.id
|
||||
```
|
||||
|
||||
Default deploy menggunakan:
|
||||
|
||||
- direktori aplikasi: diambil dari `WorkingDirectory` service (otomatis), atau
|
||||
`$HOME/apps` bila service tidak mendefinisikannya
|
||||
- binary: `<direktori aplikasi>/cpone-middleware`
|
||||
- service: `cpone-middleware.service`
|
||||
- service manager: otomatis mendeteksi systemd user (`systemctl --user`) atau
|
||||
systemd system (`systemctl`)
|
||||
- restart: menghentikan `MainPID`, lalu systemd `Restart=always` menyalakan
|
||||
binary baru
|
||||
- SSH memiliki timeout koneksi dan keepalive agar deploy tidak menggantung
|
||||
|
||||
Jika server memakai izin systemd untuk `restart`, gunakan:
|
||||
|
||||
```bash
|
||||
make deploy one@host.example SERVICE=cpone-middleware.service RESTART_MODE=systemctl
|
||||
```
|
||||
|
||||
Untuk direktori khusus, gunakan `REMOTE_DIR=/path/apps`. Untuk target lama
|
||||
`one@devcpone.aplikasi.web.id`, hasil default tetap `/home/one/apps`.
|
||||
|
||||
Target server harus sudah dapat diakses dengan SSH key/agent; tool tidak
|
||||
menyimpan atau mengirim `.env` lokal.
|
||||
|
||||
Service Go untuk endpoint:
|
||||
|
||||
```text
|
||||
@@ -53,6 +95,10 @@ dipaginasi 20 data per halaman.
|
||||
GET /api/cpone/layanan-mapping-harga?periodeTarifID=10&layananID=6413,6414,1309
|
||||
Authorization: Bearer <your-secure-token>
|
||||
|
||||
GET /api/cpone/reports/mcu?tanggal=2026-09-01&tanggal2=2026-09-07
|
||||
Authorization: Bearer <your-secure-token>
|
||||
X-RS-Code: <kode-rs>
|
||||
|
||||
POST /api/cpone/patients/lab-registration
|
||||
Authorization: Bearer <your-secure-token>
|
||||
Content-Type: application/json
|
||||
@@ -72,6 +118,18 @@ Content-Type: application/json
|
||||
|
||||
Format payload dan response dibuat mengikuti controller PHP CPONE terkait.
|
||||
|
||||
Endpoint laporan MCU mengembalikan JSON dengan envelope standar `success`,
|
||||
`message`, dan `data`. Setiap item `data` mempertahankan kolom yang ditulis oleh
|
||||
`docs/lap_mcu.php`, termasuk nilai fallback seperti `Tidak Ada`, `Normal`, dan
|
||||
`UMUM`. Alias kompatibel yang tersedia adalah `/api/cpone/laporan/mcu` dan
|
||||
`/api/cpone/laporan-mcu` serta `/api/cpone/lap-mcu`.
|
||||
|
||||
Query laporan membutuhkan privilege `SELECT` pada tabel MCU legacy:
|
||||
`pengkajianmcu`, `tandavital_pasien`, `regpas_detail`, `gayahidup`,
|
||||
`riwayatpenyakitdahulu`, `riwayatpenyakitkeluarga`, `riwayatalergi`, seluruh
|
||||
tabel `pemeriksaanfisik_*` yang dipakai laporan, `pemeriksaankhusus`, dan
|
||||
`penyakitakibatkerja`.
|
||||
|
||||
Contoh payload pembuatan paket beserta layanan:
|
||||
|
||||
```json
|
||||
|
||||
Reference in New Issue
Block a user