Skip to main content

KTN-14

FieldIsi
Dokumen IDKTN-14
DeskripsiExpired date pada barang masuk
Nomor Revisi1
Tanggal2026-10-04
Keteranganexpired_date sudah ada di Barang_Masuk_Rinci; diakomodasi pada penerimaan barang, pembelian atas SO, dan penjualan atas SO

1. Ringkasan​

a. In scope​

  • Memastikan expired_date pada Barang_Masuk_Rinci terisi / terpakai pada alur terkait
  • User mengisi expired_date pada penerimaan barang
  • User mengisi expired_date pada pembelian atas SO
  • User mengisi / membawa expired_date pada penjualan atas SO

b. Catatan​

  • Field expired_date sudah ada di Barang_Masuk_Rinci
  • Pekerjaan dokumen ini adalah mengakomodasi field tersebut di UI dan payload transaksi yang disebut di in scope

c. Kesimpulan​

  • [FE] Tambah input expired_date pada penerimaan barang
  • [FE] Tambah input expired_date pada pembelian atas SO
  • [FE] Akomodasi expired_date pada penjualan atas SO
  • [BE] Pastikan expired_date diteruskan dan disimpan ke Barang_Masuk_Rinci pada alur masuk terkait
  • [BE] Pastikan response lot / transaksi terkait memuat expired_date

2. Functional Requirement​

KodeDeskripsi
FR-01Barang_Masuk_Rinci menyimpan expired_date
FR-02Penerimaan barang dapat mengisi expired_date
FR-03Pembelian atas SO dapat mengisi expired_date
FR-04Penjualan atas SO dapat mengisi / membawa expired_date
FR-05Create / update lot barang masuk menyimpan expired_date

3. Use Case List​

KodeDeskripsi
UC-01Mengisi expired date pada penerimaan barang
UC-02Mengisi expired date pada pembelian atas SO
UC-03Mengisi / membawa expired date pada penjualan atas SO
UC-04Menyimpan expired date ke Barang_Masuk_Rinci

4. Use Case Scenario​

UC-01 : Mengisi expired date pada penerimaan barang​

AktorUser gudang / penerimaan
DeskripsiUser mengisi tanggal kedaluwarsa saat menerima barang
PrekondisiUser sudah login
Hak buat penerimaan barang
Alur utama1. User membuka form penerimaan barang.
2. User menambah baris barang.
3. User mengisi expired_date.
4. User menyimpan penerimaan.
5. Sistem menyimpan expired_date ke Barang_Masuk_Rinci.
Alur negatif- Jika expired_date wajib namun kosong, simpan ditolak.
- Jika gagal menyimpan, penerimaan / lot tidak terbentuk.
Bisnis rule- expired_date melekat pada lot Barang_Masuk_Rinci.
PostkondisiLot penerimaan punya expired_date
TriggerUser simpan penerimaan barang
Kode FRFR-01
FR-02
FR-05

UC-02 : Mengisi expired date pada pembelian atas SO​

AktorUser pembelian
DeskripsiUser mengisi tanggal kedaluwarsa pada pembelian atas SO
PrekondisiUser sudah login
Dokumen SO / konteks pembelian terkait tersedia
Alur utama1. User membuka form pembelian atas SO.
2. User mengisi baris barang.
3. User mengisi expired_date per baris / lot.
4. User menyimpan pembelian.
5. Sistem menyimpan expired_date ke Barang_Masuk_Rinci.
Alur negatif- Jika validasi gagal, pembelian tidak tersimpan.
- Jika gagal membentuk lot, transaksi digagalkan.
Bisnis rule- expired_date ikut dikirim saat pembentukan Barang_Masuk_Rinci.
PostkondisiLot pembelian punya expired_date
TriggerUser simpan pembelian atas SO
Kode FRFR-01
FR-03
FR-05

UC-03 : Mengisi / membawa expired date pada penjualan atas SO​

AktorUser penjualan
DeskripsiUser mengisi atau membawa expired_date pada penjualan atas SO terkait lot barang masuk
PrekondisiSO tersedia
Hak buat penjualan atas SO
Alur utama1. User membuka penjualan atas SO.
2. Sistem memuat baris SO.
3. User mengisi / sistem membawa expired_date dari lot terkait.
4. User menyimpan penjualan atas SO.
Alur negatif- Jika SO tidak ditemukan, proses tidak dilanjutkan.
- Jika lot terkait tidak ada, expired_date tidak tersedia.
Bisnis rule- Data expired_date merujuk ke Barang_Masuk_Rinci.
- Pemilihan lot keluar secara FIFO / kustom diatur lebih lanjut di KTN-15.
PostkondisiPenjualan atas SO memakai informasi expired_date lot
TriggerUser membuat penjualan atas SO
Kode FRFR-04

UC-04 : Menyimpan expired date ke Barang_Masuk_Rinci​

AktorSistem BE
DeskripsiBE menyimpan expired_date ke Barang_Masuk_Rinci
PrekondisiPayload memuat expired_date
Alur utama1. FE mengirim transaksi beserta expired_date.
2. BE membentuk / memperbarui lot.
3. BE menulis expired_date ke Barang_Masuk_Rinci.
Alur negatif- Jika nilai tidak valid, request ditolak.
- Jika gagal tulis lot, transaksi digagalkan.
Bisnis rule- Sumber kebenaran expired_date lot adalah Barang_Masuk_Rinci.expired_date.
PostkondisiLot tersimpan dengan expired_date
TriggerCreate / update barang masuk
Kode FRFR-01
FR-05

5. Data Flow Diagram​

DFD-01 — Expired date barang masuk​

6. Sequence Diagram​

SD-01 — UC-01 : Mengisi expired date pada penerimaan barang​

SD-02 — UC-02 : Mengisi expired date pada pembelian atas SO​

SD-03 — UC-03 : Mengisi / membawa expired date pada penjualan atas SO​

SD-04 — UC-04 : Menyimpan expired date ke Barang_Masuk_Rinci​

7. Table Schema​

TableFieldStatusDeskripsi
Barang_Masuk_Rinciexpired_dateexistingTanggal kedaluwarsa lot barang masuk

8. API Schema​

EndpointStatusPerubahan
POST /invoice-penerimaan-barangchangedTerima expired_date → simpan ke Barang_Masuk_Rinci
POST /[url_pembelian]/pembelianchangedTerima expired_date pada pembelian atas SO → simpan ke Barang_Masuk_Rinci
POST /penjualanchangedAkomodasi expired_date / tautan lot pada penjualan atas SO
POST /barang-masukchangedTerima / simpan expired_date
POST /barang-masuk/bulkchangedTerima / simpan expired_date
GET /barang-masukchangedResponse memuat expired_date