-- ========================================================
-- SISTEM AKUNTANSI LENGKAP - DATABASE SEEDS (PostgreSQL 14+)
-- Data Awal Lengkap (COA, Jurnal Umum, AJP, User & Profil)
-- ========================================================

-- Clean up existing data
TRUNCATE TABLE document_signatories CASCADE;
TRUNCATE TABLE virtual_ledgers CASCADE;
TRUNCATE TABLE virtual_accounts CASCADE;
TRUNCATE TABLE vendors_suppliers CASCADE;
TRUNCATE TABLE journal_items CASCADE;
TRUNCATE TABLE journal_entries CASCADE;
TRUNCATE TABLE period_account_balances CASCADE;
TRUNCATE TABLE accounts CASCADE;
TRUNCATE TABLE accounting_periods CASCADE;
TRUNCATE TABLE company_profile CASCADE;
TRUNCATE TABLE role_permissions CASCADE;
TRUNCATE TABLE user_permissions CASCADE;
TRUNCATE TABLE permissions CASCADE;
TRUNCATE TABLE roles CASCADE;
TRUNCATE TABLE users CASCADE;
TRUNCATE TABLE audit_trail CASCADE;
TRUNCATE TABLE activity_logs CASCADE;

-- 1. Users
INSERT INTO users (id, username, password_hash, full_name, email, role, avatar, department, is_active, last_login, created_at) VALUES
('usr-1', 'superadmin', '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', 'Tio Nugraha (Super Admin)', 'admin@tiomandirijaya.co.id', 'superadmin', 'https://images.unsplash.com/photo-1534528741775-53994a69daeb?w=120&auto=format&fit=crop&q=80', 'Teknologi Informasi & Keuangan', TRUE, NOW(), NOW()),
('usr-2', 'akuntan_hendra', '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', 'Hendra Setiawan, Ak.', 'hendra.akuntan@tiomandirijaya.co.id', 'akuntan', 'https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?w=120&auto=format&fit=crop&q=80', 'Akuntansi & Keuangan', TRUE, NOW(), NOW()),
('usr-3', 'auditor_sari', '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', 'Sari Wulandari, CPA', 'sari.auditor@tiomandirijaya.co.id', 'auditor', 'https://images.unsplash.com/photo-1573496359142-b8d87734a5a2?w=120&auto=format&fit=crop&q=80', 'Audit & Kepatuhan Internal', TRUE, NOW(), NOW()),
('usr-4', 'direksi_budi', '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', 'Ir. Budi Santoso (Komisaris)', 'budi.santoso@tiomandirijaya.co.id', 'direktur', 'https://images.unsplash.com/photo-1500648767791-00dcc994a43e?w=120&auto=format&fit=crop&q=80', 'Dewan Direksi & Komisaris', TRUE, NOW(), NOW());

-- 2. Roles & Permissions Matrix
INSERT INTO roles (id, name, description, created_at) VALUES
('superadmin', 'Super Administrator', 'Akses penuh ke semua modul sistem, database, manajemen user, CRUD Virtual Ledger, dan konfigurasi penandatangan.', NOW()),
('akuntan', 'Head Accountant / Akuntan Senior', 'Mengelola daftar akun, jurnal transaksi, laporan resmi, serta CRUD Virtual Ledger dan penerbitan VA rekanan.', NOW()),
('auditor', 'Internal / External Auditor', 'Read-only audit: melihat pembukuan, neraca, laporan laba rugi, buku pembantu (Virtual Ledger), dan audit trail.', NOW()),
('direktur', 'Direksi / Manajemen Eksekutif', 'Melihat ringkasan eksekutif, status hutang/piutang vendor (VL), dan menandatangani dokumen resmi secara digital.', NOW());

INSERT INTO permissions (id, name, category, description) VALUES
('view_dashboard', 'Lihat Dashboard & Ringkasan', 'Dashboard', 'Akses modul ikhtisar eksekutif dan KPI finansial'),
('manage_coa', 'Kelola Bagan Akun (COA)', 'Akuntansi', 'Tambah, edit, dan hapus akun perkiraan serta saldo awal'),
('create_journal', 'Entri Jurnal Umum & AJP', 'Transaksi', 'Mencatat transaksi harian dan jurnal penyesuaian'),
('edit_journal', 'Ubah Jurnal Transaksi', 'Transaksi', 'Mengubah entri jurnal sebelum tutup buku'),
('delete_journal', 'Hapus Jurnal Transaksi', 'Transaksi', 'Menghapus entri jurnal dari pembukuan'),
('view_reports', 'Lihat Laporan Keuangan', 'Laporan', 'Akses Laba Rugi, Neraca Scontro, Arus Kas, dan Neraca Lajur'),
('close_period', 'Tutup Buku / Periode', 'Periode', 'Eksekusi tutup buku bulanan/tahunan dan roll-forward otomatis'),
('export_data', 'Ekspor Laporan & Cadangan', 'Sistem', 'Unduh laporan PDF/Excel dan backup basis data JSON/SQL'),
('manage_users', 'Kelola Pengguna & Hak Akses', 'Keamanan', 'Menambah user, ubah hak akses, dan atur peran sistem'),
('view_audit_trail', 'Lihat Audit Trail & Log', 'Audit', 'Memantau log aktivitas, security log, dan perubahan transaksi'),
('manage_company_profile', 'Kelola Profil Perusahaan', 'Konfigurasi', 'Ubah identitas PT Tio Mandiri Jaya, NPWP, dan logo (Kamera/Lokal/Cloud)'),
-- Hak Akses Khusus CRUD Virtual Ledger & Rekanan VA
('view_vl', 'Lihat Virtual Ledger & Vendor', 'Virtual Ledger & Vendor', 'Melihat kartu buku pembantu utang/piutang dan nomor Virtual Account'),
('create_vl', 'Tambah Vendor & VA Baru', 'Virtual Ledger & Vendor', 'Membuat master data rekanan dan menerbitkan nomor Virtual Account'),
('edit_vl', 'Ubah Data Vendor & Plafon', 'Virtual Ledger & Vendor', 'Mengubah profil vendor, batas kredit tempo, dan rekening tujuan'),
('delete_vl', 'Hapus / Nonaktifkan Vendor', 'Virtual Ledger & Vendor', 'Menghapus vendor atau menonaktifkan fasilitas Virtual Account'),
('reconcile_vl', 'Posting Rekonsiliasi VL ke Jurnal', 'Virtual Ledger & Vendor', 'Melakukan rekonsiliasi otomatis pembayaran VA ke jurnal umum'),
('manage_signatories', 'Kelola Penandatangan & QR Code', 'Sistem & Konfigurasi', 'Mengatur pejabat penandatangan dinamis dan sertifikat QR Code');

INSERT INTO role_permissions (role_id, permission_id) VALUES
('superadmin', 'view_dashboard'), ('superadmin', 'manage_coa'), ('superadmin', 'create_journal'), ('superadmin', 'edit_journal'), ('superadmin', 'delete_journal'), ('superadmin', 'view_reports'), ('superadmin', 'close_period'), ('superadmin', 'export_data'), ('superadmin', 'manage_users'), ('superadmin', 'view_audit_trail'), ('superadmin', 'manage_company_profile'), ('superadmin', 'view_vl'), ('superadmin', 'create_vl'), ('superadmin', 'edit_vl'), ('superadmin', 'delete_vl'), ('superadmin', 'reconcile_vl'), ('superadmin', 'manage_signatories'),
('akuntan', 'view_dashboard'), ('akuntan', 'manage_coa'), ('akuntan', 'create_journal'), ('akuntan', 'edit_journal'), ('akuntan', 'view_reports'), ('akuntan', 'close_period'), ('akuntan', 'export_data'), ('akuntan', 'view_vl'), ('akuntan', 'create_vl'), ('akuntan', 'edit_vl'), ('akuntan', 'reconcile_vl'), ('akuntan', 'manage_signatories'),
('auditor', 'view_dashboard'), ('auditor', 'view_reports'), ('auditor', 'export_data'), ('auditor', 'view_audit_trail'), ('auditor', 'view_vl'),
('direktur', 'view_dashboard'), ('direktur', 'view_reports'), ('direktur', 'export_data'), ('direktur', 'view_vl'), ('direktur', 'manage_signatories');

INSERT INTO user_permissions (user_id, permission_id) VALUES
('usr-1', 'view_dashboard'), ('usr-1', 'manage_coa'), ('usr-1', 'create_journal'), ('usr-1', 'view_reports'), ('usr-1', 'close_period'), ('usr-1', 'export_data'), ('usr-1', 'manage_users'), ('usr-1', 'view_audit_trail'), ('usr-1', 'view_vl'), ('usr-1', 'create_vl'), ('usr-1', 'edit_vl'), ('usr-1', 'delete_vl'), ('usr-1', 'reconcile_vl'), ('usr-1', 'manage_signatories');

-- 3. Company Profile
INSERT INTO company_profile (id, company_name, industry, fiscal_year, address, phone, email, npwp, website, tax_rate_percent, logo_url, logo_source, storage_driver) VALUES
(1, 'PT Pratama Karya Mandiri', 'Jasa & Konsultansi Bisnis', '2026', 'Jl. Jenderal Sudirman Kav. 52-53, Jakarta Selatan', '(021) 555-8900', 'finance@pratamakarya.co.id', '01.234.567.8-012.000', 'https://pratamakarya.co.id', 22.00, 'https://images.unsplash.com/photo-1554224155-8d04cb21cd6c?w=120&auto=format&fit=crop&q=60', 'local', 'local');

-- 4. Accounting Period
INSERT INTO accounting_periods (id, year, month, name, is_closed, initial_balance_mode, created_at) VALUES
('per-2026-01', 2026, 1, 'Januari 2026', FALSE, 'manual', NOW());

-- 5. Accounts (COA - Lengkap PSAK & Terintegrasi Rekanan)
INSERT INTO accounts (id, code, name, category, pos_saldo, pos_laporan, initial_debit, initial_credit, cash_flow_category, description, linked_vendor_id, is_active) VALUES
('acc-101', '1-1010', 'Kas di Tangan (Petty Cash)', 'Aktiva Lancar', 'Debet', 'Neraca', 15000000.00, 0.00, 'Operasi', 'Kas kecil operasional kantor', NULL, TRUE),
('acc-102', '1-1020', 'Bank Mandiri Giro', 'Aktiva Lancar', 'Debet', 'Neraca', 185000000.00, 0.00, 'Operasi', 'Rekening utama operasional', NULL, TRUE),
('acc-103', '1-1030', 'Bank BCA Giro', 'Aktiva Lancar', 'Debet', 'Neraca', 95000000.00, 0.00, 'Operasi', 'Rekening penampungan & cadangan', NULL, TRUE),
('acc-104', '1-1040', 'Piutang Usaha', 'Aktiva Lancar', 'Debet', 'Neraca', 45000000.00, 0.00, 'Operasi', 'Tagihan kepada pelanggan atas jasa', NULL, TRUE),
('acc-105', '1-1050', 'Perlengkapan Kantor', 'Aktiva Lancar', 'Debet', 'Neraca', 12000000.00, 0.00, 'Operasi', 'Alat tulis kantor dan perlengkapan inventaris kecil', NULL, TRUE),
('acc-106', '1-1060', 'Sewa Dibayar di Muka', 'Aktiva Lancar', 'Debet', 'Neraca', 36000000.00, 0.00, 'Operasi', 'Pembayaran sewa gedung kantor tahun berjalan', NULL, TRUE),
('acc-107', '1-1070', 'Asuransi Dibayar di Muka', 'Aktiva Lancar', 'Debet', 'Neraca', 12000000.00, 0.00, 'Operasi', 'Premi asuransi tempat kerja dibayar di muka', NULL, TRUE),
('acc-113001', '1-1041', 'Piutang Usaha Proyek & Rekanan', 'Aktiva Lancar', 'Debet', 'Neraca', 0.00, 0.00, 'Operasi', 'Tagihan Piutang Usaha Kontrak Proyek & Jasa Rekanan/Mitra (Dapat dikaitkan ke Rekanan & VA)', 'vnd-001', TRUE),
('acc-201', '1-2010', 'Peralatan Kantor & IT', 'Aktiva Tetap', 'Debet', 'Neraca', 80000000.00, 0.00, 'Investasi', 'Komputer, server, meja kerja, dan perangkat IT', NULL, TRUE),
('acc-202', '1-2020', 'Akumulasi Penyusutan Peralatan', 'Akumulasi Penyusutan', 'Kredit', 'Neraca', 0.00, 16000000.00, 'NonKas', 'Kontra aset peralatan kantor', NULL, TRUE),
('acc-203', '1-2030', 'Kendaraan Operasional', 'Aktiva Tetap', 'Debet', 'Neraca', 160000000.00, 0.00, 'Investasi', 'Mobil logistik dan dinas manajemen', NULL, TRUE),
('acc-204', '1-2040', 'Akumulasi Penyusutan Kendaraan', 'Akumulasi Penyusutan', 'Kredit', 'Neraca', 0.00, 40000000.00, 'NonKas', 'Kontra aset kendaraan operasional', NULL, TRUE),
('acc-301', '2-1010', 'Utang Usaha', 'Kewajiban Lancar', 'Kredit', 'Neraca', 0.00, 38000000.00, 'Operasi', 'Utang kepada supplier pihak ketiga', NULL, TRUE),
('acc-302', '2-1020', 'Utang Gaji', 'Kewajiban Lancar', 'Kredit', 'Neraca', 0.00, 15000000.00, 'Operasi', 'Kewajiban gaji karyawan yang belum dibayarkan', NULL, TRUE),
('acc-303', '2-1030', 'Utang Pajak (PPh 21 / PPh 25 / PPh Badan)', 'Kewajiban Lancar', 'Kredit', 'Neraca', 0.00, 9000000.00, 'Operasi', 'Kewajiban pajak masa dan tahunan', NULL, TRUE),
('acc-304', '2-1040', 'Pendapatan Diterima di Muka', 'Kewajiban Lancar', 'Kredit', 'Neraca', 0.00, 25000000.00, 'Operasi', 'Uang muka kontrak jasa dari klien', NULL, TRUE),
('acc-213005', '213005', 'Hutang PPN-11% - PT Tio Mandiri Jaya', 'Kewajiban Lancar', 'Kredit', 'Neraca', 0.00, 0.00, 'Operasi', 'Hutang PPN Keluaran 11% Faktur Pajak PT Tio Mandiri Jaya', NULL, TRUE),
('acc-305', '2-2010', 'Utang Bank Jangka Panjang', 'Kewajiban Jangka Panjang', 'Kredit', 'Neraca', 0.00, 120000000.00, 'Pendanaan', 'Fasilitas kredit investasi perbankan', NULL, TRUE),
('acc-401', '3-1010', 'Modal Saham / Modal Disetor', 'Ekuitas', 'Kredit', 'Neraca', 0.00, 270000000.00, 'Pendanaan', 'Modal disetor para pendiri perseroan', NULL, TRUE),
('acc-402', '3-1020', 'Laba Ditahan (Retained Earnings)', 'Ekuitas', 'Kredit', 'Neraca', 0.00, 107000000.00, 'Pendanaan', 'Akumulasi laba periode-periode sebelumnya', NULL, TRUE),
('acc-403', '3-1030', 'Prive / Dividen', 'Ekuitas', 'Debet', 'Neraca', 0.00, 0.00, 'Pendanaan', 'Penarikan modal atau pembagian dividen', NULL, TRUE),
('acc-501', '4-1010', 'Pendapatan Jasa Konsultasi', 'Pendapatan Usaha', 'Kredit', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Penghasilan pokok dari kontrak konsultasi klien', NULL, TRUE),
('acc-502', '4-1020', 'Pendapatan Jasa Implementasi Sistem', 'Pendapatan Usaha', 'Kredit', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Penghasilan instalasi & kustomisasi software', NULL, TRUE),
('acc-410013', '4-1030', 'Pendapatan Jasa Telekomunikasi & IT', 'Pendapatan Usaha', 'Kredit', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Pendapatan jasa teknis telekomunikasi, infrastruktur IT & jaringan mitra', 'vnd-001', TRUE),
('acc-503', '4-2010', 'Pendapatan Bunga Bank & Giro', 'Pendapatan Lain', 'Kredit', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Pendapatan bunga rekening operasional', NULL, TRUE),
('acc-601', '6-1010', 'Beban Gaji & Tunjangan Karyawan', 'Beban Operasional', 'Debet', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Gaji pokok, tunjangan kehadiran & BPJS', NULL, TRUE),
('acc-602', '6-1020', 'Beban Sewa Kantor', 'Beban Operasional', 'Debet', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Alokasi pemakaian sewa gedung', NULL, TRUE),
('acc-603', '6-1030', 'Beban Utilitas (Listrik, Air & Internet)', 'Beban Operasional', 'Debet', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Tagihan PLN, PDAM, dan fiber internet', NULL, TRUE),
('acc-604', '6-1040', 'Beban Perlengkapan Kantor', 'Beban Administrasi', 'Debet', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Pemakaian alat kantor & supplies', NULL, TRUE),
('acc-605', '6-1050', 'Beban Transportasi & Perjalanan Dinas', 'Beban Operasional', 'Debet', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'BBM, tol, tiket dan akomodasi dinas', NULL, TRUE),
('acc-606', '6-1060', 'Beban Pemasaran & Iklan', 'Beban Operasional', 'Debet', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Iklan digital, brosur, dan seminar promosi', NULL, TRUE),
('acc-607', '6-1070', 'Beban Penyusutan Peralatan', 'Beban Administrasi', 'Debet', 'Laba Rugi', 0.00, 0.00, 'NonKas', 'Alokasi depresiasi peralatan bulanan', NULL, TRUE),
('acc-608', '6-1080', 'Beban Penyusutan Kendaraan', 'Beban Administrasi', 'Debet', 'Laba Rugi', 0.00, 0.00, 'NonKas', 'Alokasi depresiasi kendaraan operasional', NULL, TRUE),
('acc-609', '6-1090', 'Beban Asuransi', 'Beban Administrasi', 'Debet', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Alokasi premi asuransi periode berjalan', NULL, TRUE),
('acc-610', '6-1100', 'Beban Administrasi Bank', 'Beban Lain', 'Debet', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Biaya admin bulanan bank & transfer', NULL, TRUE),
('acc-611', '6-2010', 'Beban Pajak Penghasilan (PPh Badan)', 'Beban Pajak', 'Debet', 'Laba Rugi', 0.00, 0.00, 'Operasi', 'Beban taksiran pajak penghasilan periode berjalan', NULL, TRUE);

-- 6. Journal Entries
INSERT INTO journal_entries (id, ref_no, period_id, entry_date, entry_month, journal_type, notes, total_amount, is_posted, created_by, created_at) VALUES
('je-1', 'BKM-001', 'per-2026-01', '2026-01-05', 'Januari 2026', 'Umum', 'Penerimaan pelunasan piutang jasa dari PT Surya Sentosa via Bank Mandiri', 25000000.00, TRUE, 'usr-3', NOW()),
('je-2', 'FKT-001', 'per-2026-01', '2026-01-08', 'Januari 2026', 'Umum', 'Pendapatan jasa konsultasi manajemen kepada CV Bintang Timur (sebagian tunai via BCA, sebagian piutang)', 70000000.00, TRUE, 'usr-3', NOW()),
('je-3', 'BKK-001', 'per-2026-01', '2026-01-12', 'Januari 2026', 'Umum', 'Pembayaran sebagian utang usaha kepada PT Mitra Solusi via Bank Mandiri', 20000000.00, TRUE, 'usr-3', NOW()),
('je-4', 'BKK-002', 'per-2026-01', '2026-01-16', 'Januari 2026', 'Umum', 'Pembayaran listrik PLN, internet, dan transportasi operasional dari Kas di Tangan', 7000000.00, TRUE, 'usr-3', NOW()),
('je-5', 'BKK-003', 'per-2026-01', '2026-01-25', 'Januari 2026', 'Umum', 'Pembayaran gaji karyawan bulan berjalan dan pelunasan sisa utang gaji lalu', 43000000.00, TRUE, 'usr-2', NOW()),
('je-6', 'BKM-002', 'per-2026-01', '2026-01-28', 'Januari 2026', 'Umum', 'Penerimaan kontrak implementasi sistem ERP dan pendapatan jasa giro bank', 46350000.00, TRUE, 'usr-3', NOW()),
('je-7', 'BKK-004', 'per-2026-01', '2026-01-29', 'Januari 2026', 'Umum', 'Pembayaran kampanye digital Google Ads & LinkedIn Ads', 6000000.00, TRUE, 'usr-3', NOW()),
('je-8', 'BKK-005', 'per-2026-01', '2026-01-30', 'Januari 2026', 'Umum', 'Pembelian kertas, tinta printer, dan supplies kantor', 3000000.00, TRUE, 'usr-3', NOW()),
('je-9', 'AJP-001', 'per-2026-01', '2026-01-31', 'Januari 2026', 'Penyesuaian', 'Penyesuaian pemakaian perlengkapan kantor selama bulan Januari', 4000000.00, TRUE, 'usr-2', NOW()),
('je-10', 'AJP-002', 'per-2026-01', '2026-01-31', 'Januari 2026', 'Penyesuaian', 'Alokasi sewa kantor bulan Januari dari Sewa Dibayar di Muka', 3000000.00, TRUE, 'usr-2', NOW()),
('je-11', 'AJP-003', 'per-2026-01', '2026-01-31', 'Januari 2026', 'Penyesuaian', 'Alokasi beban asuransi bulan Januari dari Asuransi Dibayar di Muka', 1000000.00, TRUE, 'usr-2', NOW()),
('je-12', 'AJP-004', 'per-2026-01', '2026-01-31', 'Januari 2026', 'Penyesuaian', 'Pencatatan penyusutan aset tetap (Peralatan & Kendaraan) bulan Januari', 4000000.00, TRUE, 'usr-2', NOW()),
('je-13', 'AJP-005', 'per-2026-01', '2026-01-31', 'Januari 2026', 'Penyesuaian', 'Pengakuan sebagian pekerjaan atas uang muka klien yang telah selesai dikerjakan', 10000000.00, TRUE, 'usr-2', NOW()),
('jur-011-huawei', '1912-1946 /INV/SACME/HTI/I/2022', 'per-2026-01', '2026-01-20', 'Januari 2026', 'Umum', 'Invoice HTI No : 1912-1946 /INV/SACME/HTI/I/2022 (Pendapatan Jasa Telekomunikasi & PPN 11%)', 346601240.00, TRUE, 'usr-2', NOW());

-- 7. Journal Items (Terhubung ke Rekanan & Virtual Account)
INSERT INTO journal_items (id, journal_id, account_id, account_code, account_name, debit, credit, description, vendor_id, virtual_account_id, va_number, sort_order) VALUES
('ji-1-1', 'je-1', 'acc-102', '1-1020', 'Bank Mandiri Giro', 25000000.00, 0.00, 'Pelunasan piutang jasa', NULL, NULL, NULL, 1),
('ji-1-2', 'je-1', 'acc-104', '1-1040', 'Piutang Usaha', 0.00, 25000000.00, 'Pelunasan piutang PT Surya Sentosa', NULL, NULL, NULL, 2),
('ji-2-1', 'je-2', 'acc-103', '1-1030', 'Bank BCA Giro', 35000000.00, 0.00, 'DP 50% jasa konsultasi', NULL, NULL, NULL, 1),
('ji-2-2', 'je-2', 'acc-104', '1-1040', 'Piutang Usaha', 35000000.00, 0.00, 'Sisa termin jasa konsultasi', NULL, NULL, NULL, 2),
('ji-2-3', 'je-2', 'acc-501', '4-1010', 'Pendapatan Jasa Konsultasi', 0.00, 70000000.00, 'Total kontrak jasa konsultasi', NULL, NULL, NULL, 3),
('ji-3-1', 'je-3', 'acc-301', '2-1010', 'Utang Usaha', 20000000.00, 0.00, 'Pelunasan faktur supplier PT TELKOM', 'vnd-002', 'va-tlk-mandiri', '890888200010002', 1),
('ji-3-2', 'je-3', 'acc-102', '1-1020', 'Bank Mandiri Giro', 0.00, 20000000.00, 'Transfer pelunasan via Mandiri Corporate', NULL, NULL, NULL, 2),
('ji-4-1', 'je-4', 'acc-603', '6-1030', 'Beban Utilitas (Listrik, Air & Internet)', 4500000.00, 0.00, 'Bayar listrik & internet kantor', NULL, NULL, NULL, 1),
('ji-4-2', 'je-4', 'acc-605', '6-1050', 'Beban Transportasi & Perjalanan Dinas', 2500000.00, 0.00, 'BBM & transportasi tim', NULL, NULL, NULL, 2),
('ji-4-3', 'je-4', 'acc-101', '1-1010', 'Kas di Tangan (Petty Cash)', 0.00, 7000000.00, 'Pengeluaran kas kecil', NULL, NULL, NULL, 3),
('ji-5-1', 'je-5', 'acc-601', '6-1010', 'Beban Gaji & Tunjangan Karyawan', 28000000.00, 0.00, 'Gaji karyawan bulan Januari', NULL, NULL, NULL, 1),
('ji-5-2', 'je-5', 'acc-302', '2-1020', 'Utang Gaji', 15000000.00, 0.00, 'Pelunasan utang gaji bulan lalu', NULL, NULL, NULL, 2),
('ji-5-3', 'je-5', 'acc-102', '1-1020', 'Bank Mandiri Giro', 0.00, 43000000.00, 'Transfer payroll via Bank Mandiri', NULL, NULL, NULL, 3),
('ji-6-1', 'je-6', 'acc-102', '1-1020', 'Bank Mandiri Giro', 45000000.00, 0.00, 'Pelunasan kontrak implementasi ERP', NULL, NULL, NULL, 1),
('ji-6-2', 'je-6', 'acc-103', '1-1030', 'Bank BCA Giro', 1200000.00, 0.00, 'Bunga tabungan & giro BCA', NULL, NULL, NULL, 2),
('ji-6-3', 'je-6', 'acc-610', '6-1100', 'Beban Administrasi Bank', 150000.00, 0.00, 'Admin fee bulanan bank BCA', NULL, NULL, NULL, 3),
('ji-6-4', 'je-6', 'acc-502', '4-1020', 'Pendapatan Jasa Implementasi Sistem', 0.00, 45000000.00, 'Kontrak implementasi PT Global Artha', NULL, NULL, NULL, 4),
('ji-6-5', 'je-6', 'acc-503', '4-2010', 'Pendapatan Bunga Bank & Giro', 0.00, 1350000.00, 'Jasa giro bank', NULL, NULL, NULL, 5),
('ji-7-1', 'je-7', 'acc-606', '6-1060', 'Beban Pemasaran & Iklan', 6000000.00, 0.00, 'Iklan digital & brosur', NULL, NULL, NULL, 1),
('ji-7-2', 'je-7', 'acc-103', '1-1030', 'Bank BCA Giro', 0.00, 6000000.00, 'Transfer via BCA', NULL, NULL, NULL, 2),
('ji-8-1', 'je-8', 'acc-105', '1-1050', 'Perlengkapan Kantor', 3000000.00, 0.00, 'Restok perlengkapan kantor', NULL, NULL, NULL, 1),
('ji-8-2', 'je-8', 'acc-101', '1-1010', 'Kas di Tangan (Petty Cash)', 0.00, 3000000.00, 'Kas tunai keluar', NULL, NULL, NULL, 2),
('ji-9-1', 'je-9', 'acc-604', '6-1040', 'Beban Perlengkapan Kantor', 4000000.00, 0.00, 'Pemakaian perlengkapan kantor bulan ini', NULL, NULL, NULL, 1),
('ji-9-2', 'je-9', 'acc-105', '1-1050', 'Perlengkapan Kantor', 0.00, 4000000.00, 'Pengurangan nilai perlengkapan terpakai', NULL, NULL, NULL, 2),
('ji-10-1', 'je-10', 'acc-602', '6-1020', 'Beban Sewa Kantor', 3000000.00, 0.00, 'Amortisasi beban sewa bulan Januari', NULL, NULL, NULL, 1),
('ji-10-2', 'je-10', 'acc-106', '1-1060', 'Sewa Dibayar di Muka', 0.00, 3000000.00, 'Pengurangan saldo sewa dibayar di muka', NULL, NULL, NULL, 2),
('ji-11-1', 'je-11', 'acc-609', '6-1090', 'Beban Asuransi', 1000000.00, 0.00, 'Beban asuransi bulan berjalan', NULL, NULL, NULL, 1),
('ji-11-2', 'je-11', 'acc-107', '1-1070', 'Asuransi Dibayar di Muka', 0.00, 1000000.00, 'Pengurangan asuransi dibayar di muka', NULL, NULL, NULL, 2),
('ji-12-1', 'je-12', 'acc-607', '6-1070', 'Beban Penyusutan Peralatan', 1333333.00, 0.00, 'Penyusutan peralatan kantor 1 bulan', NULL, NULL, NULL, 1),
('ji-12-2', 'je-12', 'acc-202', '1-2020', 'Akumulasi Penyusutan Peralatan', 0.00, 1333333.00, 'Akumulasi penyusutan peralatan', NULL, NULL, NULL, 2),
('ji-12-3', 'je-12', 'acc-608', '6-1080', 'Beban Penyusutan Kendaraan', 2666667.00, 0.00, 'Penyusutan kendaraan 1 bulan', NULL, NULL, NULL, 3),
('ji-12-4', 'je-12', 'acc-204', '1-2040', 'Akumulasi Penyusutan Kendaraan', 0.00, 2666667.00, 'Akumulasi penyusutan kendaraan', NULL, NULL, NULL, 4),
('ji-13-1', 'je-13', 'acc-304', '2-1040', 'Pendapatan Diterima di Muka', 10000000.00, 0.00, 'Pengurangan kewajiban uang muka', NULL, NULL, NULL, 1),
('ji-13-2', 'je-13', 'acc-501', '4-1010', 'Pendapatan Jasa Konsultasi', 0.00, 10000000.00, 'Pengakuan pendapatan termin selesai', NULL, NULL, NULL, 2),
('ji-hw-1', 'jur-011-huawei', 'acc-113001', '1-1041', 'Piutang Usaha Proyek & Rekanan', 346601240.00, 0.00, 'Invoice HTI No : 1912-1946 /INV/SACME/HTI/I/2022', 'vnd-001', 'va-hti-bca', '880812345678901', 1),
('ji-hw-2', 'jur-011-huawei', 'acc-410013', '4-1030', 'Pendapatan Jasa Telekomunikasi & IT', 0.00, 312253369.00, 'Pendapatan Kontrak Jasa Telekomunikasi HTI No: 1912-1946', 'vnd-001', NULL, NULL, 2),
('ji-hw-3', 'jur-011-huawei', 'acc-213005', '213005', 'Hutang PPN-11% - PT Tio Mandiri Jaya', 0.00, 34347871.00, 'Hutang PPN Keluaran 11% Faktur Pajak PT Tio Mandiri Jaya', 'vnd-001', NULL, NULL, 3);

-- 8. Audit Trail & Activity Logs
INSERT INTO audit_trail (id, timestamp, user_id, user_name, user_role, module, action, entity_id, description, ip_address, user_agent) VALUES
(1, NOW() - INTERVAL '20 days', 'usr-1', 'Rizky Pratama, S.Ak., CA', 'superadmin', 'COA', 'CREATE', 'acc-101', 'Inisialisasi Master Chart of Accounts (COA) PSAK', '192.168.1.10', 'Mozilla/5.0'),
(2, NOW() - INTERVAL '15 days', 'usr-3', 'Siti Nurhaliza, A.Md.Ak.', 'accounting_staff', 'JURNAL', 'CREATE', 'je-1', 'Pencatatan Jurnal Kas Masuk Pelunasan Piutang BKM-001', '192.168.1.15', 'Mozilla/5.0'),
(3, NOW() - INTERVAL '1 day', 'usr-2', 'Hendra Gunawan, SE., Ak.', 'accounting_manager', 'AJP', 'CREATE', 'je-12', 'Pencatatan Ayat Jurnal Penyesuaian Penyusutan AJP-004', '192.168.1.12', 'Mozilla/5.0');

INSERT INTO activity_logs (id, timestamp, user_id, user_name, activity, severity, ip_address) VALUES
(1, NOW() - INTERVAL '20 days', 'usr-1', 'Rizky Pratama, S.Ak., CA', 'Setup awal database akuntansi dan otorisasi hak akses peran pengguna', 'success', '192.168.1.10'),
(2, NOW() - INTERVAL '15 days', 'usr-3', 'Siti Nurhaliza, A.Md.Ak.', 'Posting transaksi jurnal umum nomor BKM-001 dan FKT-001', 'info', '192.168.1.15'),
(3, NOW() - INTERVAL '1 day', 'usr-2', 'Hendra Gunawan, SE., Ak.', 'Penyusunan Kertas Kerja Neraca Lajur 10 Kolom dan verifikasi AJP', 'info', '192.168.1.12');

-- 9. Rekanan Vendor & Supplier
INSERT INTO vendors_suppliers (id, kode, nama, tipe, kategori_usaha, npwp, alamat, kota, telepon, email, kontak_person, syarat_pembayaran, plafon_kredit, akun_hutang_piutang_kode, total_tagihan, total_dibayar, saldo_hutang) VALUES
('vnd-001', 'VND-HTI-01', 'PT HUAWEI TECH INVESTMENT', 'Customer', 'Telekomunikasi & Perangkat Jaringan Seluler', '01.325.879.4-054.000', 'Gedung Wisma Mulia Lt. 35, Jl. Gatot Subroto No. 42', 'Jakarta Selatan', '(021) 5299-8800', 'finance.hti@huawei.com', 'Bambang Irawan (Project Procurement Manager)', 'Net 45', 1000000000.00, '1-1041', 346601240.00, 0.00, 346601240.00),
('vnd-002', 'SPL-TLK-02', 'PT TELKOM INDONESIA (PERSERO) TBK', 'Vendor', 'Penyedia Layanan Bandwidth, Dedicated Internet & Cloud IP Transit', '01.000.013.1-093.000', 'Jl. Pahlawan No. 10, Pleburan', 'Semarang', '(024) 841-0000', 'enterprise.jateng@telkom.co.id', 'Rudi Hartono (Enterprise Account Executive)', 'Net 30', 150000000.00, '2-1010', 38000000.00, 18000000.00, 20000000.00),
('vnd-003', 'SPL-CLD-03', 'PT SENTOSA CLOUD SOLUSINDO', 'Supplier', 'Infrastruktur Server Cloud & Hosting Datacenter Tier-3', '31.458.987.2-503.000', 'Cyber Building Lt. 8, Jl. Kuningan Barat', 'Jakarta Selatan', '(021) 798-2233', 'billing@sentosacloud.id', 'Fajar Nugroho (Cloud Ops Lead)', 'Net 14', 50000000.00, '2-1015', 12000000.00, 0.00, 12000000.00),
('vnd-004', 'SPL-ATK-04', 'CV MITRA SINAR JAYA (ATK & IT)', 'Supplier', 'Perlengkapan Kantor, Toner Printer, & Aksesoris Hardware', '02.789.654.1-511.000', 'Jl. MT Haryono No. 120', 'Semarang', '(024) 354-9988', 'sales@sinarjaya-atk.com', 'Ibu Ratna (Supervisor Toko & Grosir)', 'Net 30', 30000000.00, '2-1010', 6000000.00, 0.00, 6000000.00);

-- 10. Virtual Account Multi-Bank Rekanan
INSERT INTO virtual_accounts (id, vendor_id, bank_name, account_number, account_holder_name, va_type, currency, status, description) VALUES
('va-hti-bca', 'vnd-001', 'BCA', '880812345678901', 'VA PT TMJ - PT HUAWEI TECH', 'Static', 'IDR', 'Active', 'Virtual Account BCA Collection Kontrak Huawei Tech'),
('va-hti-mandiri', 'vnd-001', 'Mandiri', '890812345678901', 'VA PT TMJ - PT HUAWEI TECH', 'Static', 'IDR', 'Active', 'Virtual Account Mandiri Tagihan HTI'),
('va-tlk-mandiri', 'vnd-002', 'Mandiri', '890888200010002', 'VA TELKOM REGIONAL IV - TMJ', 'Static', 'IDR', 'Active', 'VA Mandiri Corporate Disbursement Billing Telkom'),
('va-cld-bca', 'vnd-003', 'BCA', '880899300020003', 'VA SENTOSA CLOUD - TMJ', 'Static', 'IDR', 'Active', 'VA BCA Auto-Debit Invoice Server Cloud TMJ'),
('va-atk-bni', 'vnd-004', 'BNI', '820877400030004', 'VA CV MITRA SINAR JAYA', 'Static', 'IDR', 'Active', 'VA BNI Pembayaran Tagihan ATK Kantor');

-- 11. Mutasi Kartu Buku Pembantu (Virtual Ledger / VL)
INSERT INTO virtual_ledgers (id, vendor_id, tanggal, no_referensi, tipe_transaksi, debet, kredit, saldo_berjalan, jurnal_id, keterangan, status_pembayaran) VALUES
('vl-001', 'vnd-001', '2026-01-20', '1912-1946 /INV/SACME/HTI/I/2022', 'Tagihan / Pembelian', 346601240.00, 0.00, 346601240.00, 'jur-011-huawei', 'Penerbitan Invoice Jasa Kontrak HTI Telekomunikasi & PPN 11%', 'Belum Lunas'),
('vl-002', 'vnd-002', '2026-01-02', 'INV-TLK-2026/01/992', 'Tagihan / Pembelian', 0.00, 38000000.00, 38000000.00, NULL, 'Tagihan langganan Dedicated Internet Leased Line & Cloud IP Transit periode Januari', 'Sebagian'),
('vl-003', 'vnd-002', '2026-01-16', 'PAY-VA-890888200010002', 'Pelunasan / Bayar', 18000000.00, 0.00, 20000000.00, NULL, 'Pelunasan termin 1 via Virtual Account Mandiri Corporate Transfer', 'Sebagian'),
('vl-004', 'vnd-003', '2026-01-10', 'INV-CLD-88291', 'Tagihan / Pembelian', 0.00, 12000000.00, 12000000.00, NULL, 'Sewa infrastruktur dedicated server dan backup data multi-zona', 'Belum Lunas'),
('vl-005', 'vnd-004', '2026-01-12', 'INV-MSJ-2026-004', 'Tagihan / Pembelian', 0.00, 6000000.00, 6000000.00, NULL, 'Pengadaan perlengkapan kantor, kertas continuous form, toner mesin cetak', 'Belum Lunas');

-- 12. Konfigurasi Pejabat Penandatangan Dinamis & QR Code
INSERT INTO document_signatories (id, dokumen_tipe, peran_label, nama, jabatan, nip_nik, email, status_tanda_tangan, tanggal_tanda_tangan, enable_qr_code, qr_code_data, catatan, kota_penetapan, sort_order) VALUES
('sig-1', 'ALL', 'Dibuat Oleh', 'Hendra Setiawan, Ak., C.A.', 'Head of Accounting & Finance', '19880512-201502-1-003', 'hendra.akuntan@tiomandirijaya.co.id', 'DITANDATANGANI_DIGITAL', '2026-01-31 17:30:00', TRUE, 'TMJ-SIGN-HENDRA-AKUNTAN-20260131-VERIFIED-7718', 'Laporan disusun berdasarkan standar PSAK & SAK EMKM secara objektif.', 'Semarang', 1),
('sig-2', 'ALL', 'Diperiksa Oleh', 'Sari Wulandari, S.E., M.Ak., CPA', 'Internal Audit Lead', '19910324-201804-2-007', 'sari.auditor@tiomandirijaya.co.id', 'DITANDATANGANI_DIGITAL', '2026-01-31 18:15:00', TRUE, 'TMJ-SIGN-SARI-AUDIT-20260131-VERIFIED-9942', 'Telah diaudit dan rekonsiliasi berpasangan (debet-kredit) seimbang 100%.', 'Semarang', 2),
('sig-3', 'ALL', 'Mengetahui & Menyetujui', 'Tio Nugraha Pratama, S.E., M.M.', 'Direktur Utama', '19830215-201001-1-001', 'direktur@tiomandirijaya.co.id', 'DITANDATANGANI_DIGITAL', '2026-01-31 19:00:00', TRUE, 'TMJ-SIGN-TIONUGRAHA-DIRUT-20260131-APPROVED-0012', 'Disahkan untuk laporan pertanggungjawaban fiskal dan rapat direksi.', 'Semarang', 3);
