43 lines
3.2 KiB
SQL
43 lines
3.2 KiB
SQL
CREATE TABLE public.mst_urusan (
|
|
id_urusan serial NOT NULL,
|
|
tahun integer DEFAULT 0 NOT NULL,
|
|
id_unik_urusan uuid DEFAULT public.uuid_generate_v7() NOT NULL,
|
|
locked boolean DEFAULT false NOT NULL,
|
|
disable boolean DEFAULT false NOT NULL,
|
|
jns_pemda integer[] DEFAULT ARRAY[0] NOT NULL,
|
|
daerah_khusus integer[] DEFAULT ARRAY[0] NOT NULL,
|
|
kode_urusan character varying(10) NOT NULL,
|
|
nama_urusan text DEFAULT ''::character varying NOT NULL,
|
|
hist_data jsonb DEFAULT '[]'::jsonb NOT NULL,
|
|
created_at timestamp(6) without time zone DEFAULT now() NOT NULL,
|
|
created_by integer DEFAULT 0 NOT NULL,
|
|
updated_at timestamp(6) without time zone DEFAULT '0001-01-01 00:00:00'::timestamp without time zone NOT NULL,
|
|
updated_by integer DEFAULT 0 NOT NULL,
|
|
deleted_at timestamp(6) without time zone DEFAULT '0001-01-01 00:00:00'::timestamp without time zone NOT NULL,
|
|
deleted_by integer DEFAULT 0 NOT NULL
|
|
);
|
|
|
|
COMMENT ON TABLE public.mst_urusan IS 'Tabel referensi urusan pemerintahan dalam sistem public/SIPD. Menyimpan kode, nama, status, dan atribut pendukung untuk pengelompokan program/kegiatan sesuai bidang urusan.';
|
|
COMMENT ON COLUMN public.mst_urusan.id_urusan IS 'Primary key. ID unik untuk setiap urusan.';
|
|
COMMENT ON COLUMN public.mst_urusan.tahun IS 'Tahun berlakunya data urusan.';
|
|
COMMENT ON COLUMN public.mst_urusan.id_unik_urusan IS 'ID unik UUID untuk backup ID primary key.';
|
|
COMMENT ON COLUMN public.mst_urusan.locked IS 'Status kunci data. TRUE berarti data terkunci dan tidak dapat diubah.';
|
|
COMMENT ON COLUMN public.mst_urusan.disable IS 'Status nonaktif. TRUE berarti urusan tidak digunakan.';
|
|
COMMENT ON COLUMN public.mst_urusan.jns_pemda IS 'Daftar jenis pemerintah daerah dalam bentuk array (1=Provinsi, 2=Kabupaten, 3=Kota).';
|
|
COMMENT ON COLUMN public.mst_urusan.daerah_khusus IS 'Daftar ID daerah khusus dalam bentuk array (440=Papua, 528=Papua Barat).';
|
|
COMMENT ON COLUMN public.mst_urusan.kode_urusan IS 'Kode resmi urusan pemerintahan.';
|
|
COMMENT ON COLUMN public.mst_urusan.nama_urusan IS 'Nama lengkap urusan pemerintahan.';
|
|
COMMENT ON COLUMN public.mst_urusan.hist_data IS 'Riwayat perubahan data dalam format JSONB.';
|
|
COMMENT ON COLUMN public.mst_urusan.created_at IS 'Tanggal dan waktu pertama kali data dibuat.';
|
|
COMMENT ON COLUMN public.mst_urusan.created_by IS 'ID pengguna yang membuat data pertama kali.';
|
|
COMMENT ON COLUMN public.mst_urusan.updated_at IS 'Tanggal dan waktu terakhir kali data diperbarui.';
|
|
COMMENT ON COLUMN public.mst_urusan.updated_by IS 'ID pengguna yang terakhir kali memperbarui data.';
|
|
COMMENT ON COLUMN public.mst_urusan.deleted_at IS 'Tanggal dan waktu data dihapus (soft delete).';
|
|
COMMENT ON COLUMN public.mst_urusan.deleted_by IS 'ID pengguna yang menghapus data.';
|
|
|
|
ALTER TABLE public.mst_urusan ADD CONSTRAINT mst_urusan_pkey PRIMARY KEY (id_urusan, tahun);
|
|
ALTER TABLE public.mst_urusan ADD CONSTRAINT mst_urusan_unique_key UNIQUE (id_urusan, tahun, kode_urusan);
|
|
|
|
CREATE INDEX mst_urusan_id_urusan_idx ON public.mst_urusan USING btree (id_urusan);
|
|
CREATE INDEX mst_urusan_tahun_idx ON public.mst_urusan USING btree (tahun);
|
|
CREATE INDEX mst_urusan_kode_urusan_idx ON public.mst_urusan USING btree (kode_urusan); |