44 lines
3.4 KiB
SQL
44 lines
3.4 KiB
SQL
CREATE TABLE public.mst_tahapan (
|
|
id_tahapan serial NOT NULL,
|
|
id_unik_tahapan uuid DEFAULT public.uuid_generate_v7() NOT NULL,
|
|
locked boolean DEFAULT false NOT NULL,
|
|
status_perda boolean DEFAULT false NOT NULL,
|
|
status_perkada boolean DEFAULT false NOT NULL,
|
|
urut_tahapan integer DEFAULT 0 NOT NULL,
|
|
status_tahapan integer DEFAULT 0 NOT NULL,
|
|
tipe_tahapan character varying(100) DEFAULT ''::character varying NOT NULL,
|
|
schema_history character varying(100) DEFAULT ''::character varying NOT NULL,
|
|
nama_tahapan character varying(100) DEFAULT ''::character varying 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_tahapan IS 'Tabel referensi tahapan, digunakan untuk menyimpan daftar tahapan proses tertentu beserta status dan tipe yang terkait.';
|
|
COMMENT ON COLUMN public.mst_tahapan.id_tahapan IS 'Primary key. ID unik untuk setiap tahapan.';
|
|
COMMENT ON COLUMN public.mst_tahapan.id_unik_tahapan IS 'ID unik UUID untuk backup ID primary key.';
|
|
COMMENT ON COLUMN public.mst_tahapan.locked IS 'Status kunci data. TRUE berarti data terkunci dan tidak dapat diubah.';
|
|
COMMENT ON COLUMN public.mst_tahapan.status_perda IS 'Status apakah tahapan terkait Peraturan Daerah (Perda). TRUE berarti terkait.';
|
|
COMMENT ON COLUMN public.mst_tahapan.status_perkada IS 'Status apakah tahapan terkait Peraturan Kepala Daerah (Perkada). TRUE berarti terkait.';
|
|
COMMENT ON COLUMN public.mst_tahapan.urut_tahapan IS 'Urutan tahapan penyusunan APBD.';
|
|
COMMENT ON COLUMN public.mst_tahapan.status_tahapan IS 'Kode status tahapan adalah kode untuk indentifikasi, 1 MURNI, 2 PERGESERAN, 3 PERUBAHAN';
|
|
COMMENT ON COLUMN public.mst_tahapan.tipe_tahapan IS 'Tipe tahapan contoh: perencanaan / penganggaran.';
|
|
COMMENT ON COLUMN public.mst_tahapan.schema_history IS 'Schema untuk backup data history per tahapan.';
|
|
COMMENT ON COLUMN public.mst_tahapan.nama_tahapan IS 'Nama tahapan.';
|
|
COMMENT ON COLUMN public.mst_tahapan.created_at IS 'Tanggal dan waktu data dibuat.';
|
|
COMMENT ON COLUMN public.mst_tahapan.created_by IS 'ID pengguna yang membuat data.';
|
|
COMMENT ON COLUMN public.mst_tahapan.updated_at IS 'Tanggal dan waktu terakhir data diperbarui.';
|
|
COMMENT ON COLUMN public.mst_tahapan.updated_by IS 'ID pengguna yang memperbarui data.';
|
|
COMMENT ON COLUMN public.mst_tahapan.deleted_at IS 'Tanggal dan waktu data dihapus (soft delete).';
|
|
COMMENT ON COLUMN public.mst_tahapan.deleted_by IS 'ID pengguna yang menghapus data.';
|
|
|
|
ALTER TABLE public.mst_tahapan ADD CONSTRAINT mst_tahapan_pkey UNIQUE (id_tahapan);
|
|
ALTER TABLE public.mst_tahapan ADD CONSTRAINT mst_tahapan_unique_key UNIQUE (id_tahapan, status_tahapan, tipe_tahapan, nama_tahapan);
|
|
|
|
CREATE INDEX mst_tahapan_id_tahapan_idx ON public.mst_tahapan USING btree (id_tahapan);
|
|
CREATE INDEX mst_tahapan_status_tahapan_idx ON public.mst_tahapan USING btree (status_tahapan);
|
|
CREATE INDEX mst_tahapan_tipe_tahapan_idx ON public.mst_tahapan USING btree (tipe_tahapan);
|
|
CREATE INDEX mst_tahapan_nama_tahapan_idx ON public.mst_tahapan USING btree (nama_tahapan); |