# Entity Relationship Diagram (ERD) - Sistem Aplikasi Laboratorium Lingkungan Berikut adalah representasi hubungan antar entitas dalam sistem aplikasi laboratorium lingkungan. ``` +----------------+ +-------------------+ +---------------------+ | CUSTOMERS | | SERVICE REQUESTS | | REQUEST PARAMETERS | +----------------+ +-------------------+ +---------------------+ | PK customer_id |<------| FK customer_id | | PK request_param_id | | customer_name | | PK request_id |<------| FK request_id | | customer_type | | request_date | | FK parameter_id | | contact_person | | request_type | | quantity | | phone_number | | project_name | | price_per_unit | | email | | project_location | +---------------------+ | address | | status | ^ | company_name | | admin_id | | +----------------+ | quotation_number | | | quotation_date | +---------------------+ | approved_date | | ANALYSIS PARAMETERS | | payment_proof | +---------------------+ | payment_date | | PK parameter_id |------+ | total_amount | | parameter_name | | | notes | | unit | | +-------------------+ | method | | | | FK sample_type_id |---+ | | | standard_value | | | v | price | | | +-------------------+ +---------------------+ | | | SAMPLING PLANS | | | +-------------------+ +---------------------+ | | | PK plan_id | | SAMPLE TYPES | | | | FK request_id | +---------------------+ | | | planned_date | | PK sample_type_id |<---+ | | location | | type_name | | | coordinates | | description | | | sampling_method | | standard_method | | | equipment_needed | +---------------------+ | | sampling_officer_id| | | status | | | notes | +---------------------+ | +-------------------+ | SAMPLES | | | +---------------------+ | | | PK sample_id | | +----------------->| FK request_id | | | FK plan_id | | | sample_code | | | FK sample_type_id |------+ | sampling_date | | sampling_location | | sampling_officer_id| | received_date | | received_by | | sample_condition | | preparation_notes | | preservation_method| | status | +---------------------+ | | v +---------------------+ +----------------+ | ANALYSIS RESULTS | | REPORTS | +---------------------+ +----------------+ | PK result_id | | PK report_id | | FK sample_id | | FK request_id | | FK parameter_id |------>| report_number | | analyst_id | | report_date | | analysis_date | | prepared_by | | result_value | | verified_by | | unit | | approved_by | | method_used | | status | | is_within_standard | | file_path | | notes | | notes | | status | +----------------+ | verified_by | | verification_date | +---------------------+ +----------------+ +---------------------+ | USERS | | ACTIVITY LOGS | +----------------+ +---------------------+ | PK user_id |<------| FK user_id | | username | | PK log_id | | password | | action | | full_name | | table_name | | email | | record_id | | role | | details | | department | | ip_address | | is_active | | created_at | | last_login | +---------------------+ +----------------+ ``` ## Keterangan Relasi 1. **Customers** (1) -- (N) **Service Requests** - Satu pelanggan (customer) dapat memiliki banyak permintaan layanan (service requests). 2. **Service Requests** (1) -- (N) **Request Parameters** - Satu permintaan layanan dapat meminta banyak parameter untuk diuji. 3. **Analysis Parameters** (1) -- (N) **Request Parameters** - Satu parameter analisis dapat diminta dalam banyak permintaan layanan. 4. **Sample Types** (1) -- (N) **Analysis Parameters** - Satu jenis sampel dapat memiliki banyak parameter analisis. 5. **Service Requests** (1) -- (N) **Sampling Plans** - Satu permintaan layanan dapat memiliki banyak rencana sampling. 6. **Sampling Plans** (1) -- (N) **Samples** - Satu rencana sampling dapat menghasilkan banyak sampel. 7. **Service Requests** (1) -- (N) **Samples** - Satu permintaan layanan dapat memiliki banyak sampel. 8. **Sample Types** (1) -- (N) **Samples** - Satu jenis sampel dapat memiliki banyak sampel. 9. **Samples** (1) -- (N) **Analysis Results** - Satu sampel dapat memiliki banyak hasil analisis. 10. **Analysis Parameters** (1) -- (N) **Analysis Results** - Satu parameter analisis dapat digunakan untuk banyak hasil analisis. 11. **Service Requests** (1) -- (N) **Reports** - Satu permintaan layanan dapat menghasilkan banyak laporan. 12. **Users** (1) -- (N) **Activity Logs** - Satu pengguna dapat memiliki banyak catatan aktivitas. 13. **Users** berhubungan dengan banyak tabel lain melalui kolom seperti: - admin_id pada Service Requests - sampling_officer_id pada Sampling Plans - sampling_officer_id pada Samples - received_by pada Samples - analyst_id pada Analysis Results - verified_by pada Analysis Results - prepared_by, verified_by, approved_by pada Reports Relasi ini menggambarkan alur layanan laboratorium lingkungan sesuai dengan diagram alur pelayanan yang disediakan. ## Penjelasan Proses Bisnis berdasarkan Diagram ERD Dengan mengikuti ERD di atas, proses bisnis laboratorium lingkungan berjalan sebagai berikut: 1. **Customer** (internal atau eksternal) mengajukan permintaan layanan (service request). 2. **Admin Lab** memproses permintaan, membuat penawaran dan quotation, mencatat detail parameter yang akan dianalisis. 3. **Petugas Sampling** membuat rencana sampling berdasarkan permintaan layanan. 4. Sampel diambil oleh **Petugas Sampling** sesuai dengan rencana sampling. 5. Sampel diterima oleh **Bagian Penerimaan Contoh Uji** yang mencatat kondisi sampel dan melakukan persiapan sampel. 6. **Bagian Analisis Laboratorium** melakukan analisis sampel dan mencatat hasilnya di tabel Analysis Results. 7. **Bagian Verifikasi Hasil Uji** memverifikasi hasil analisis dan menyiapkan laporan hasil uji. 8. Semua aktivitas pengguna dicatat dalam Activity Logs untuk audit trail dan pelacakan.