package models

import "time"

type MstUrusanModel struct {
	IDUrusan   int    `json:"id_urusan" example:"11"`
	Tahun      int    `json:"tahun" example:"2023"`
	KodeUrusan string `json:"kode_urusan" example:"1"`
	NamaUrusan string `json:"nama_urusan" example:"URUSAN PEMERINTAHAN WAJIB YANG BERKAITAN DENGAN PELAYANAN DASAR"`
	Locked     bool   `json:"locked" example:"false"`
	Disable    bool   `json:"disable" example:"false"`
}

type MstUrusanDetilModel struct {
	IDUrusan     int       `json:"id_urusan" example:"11"`
	Tahun        int       `json:"tahun" example:"2023"`
	KodeUrusan   string    `json:"kode_urusan" example:"1"`
	NamaUrusan   string    `json:"nama_urusan" example:"URUSAN PEMERINTAHAN WAJIB YANG BERKAITAN DENGAN PELAYANAN DASAR"`
	Locked       bool      `json:"locked" example:"false"`
	Disable      bool      `json:"disable" example:"false"`
	DaerahKhusus []int     `json:"daerah_khusus" example:"440,589"`
	JenisPemda   []int     `json:"jenis_pemda" example:"1,2,3"`
	CreatedAt    time.Time `json:"created_at" example:"2025-08-19 07:50:03"`
	CreatedBy    int       `json:"created_by" example:"1"`
	UpdatedAt    time.Time `json:"updated_at" example:"2025-08-19 07:50:03"`
	UpdatedBy    int       `json:"updated_by" example:"1"`
	DeletedAt    time.Time `json:"deleted_at" example:"0001-01-01 00:00:00"`
	DeletedBy    int       `json:"deleted_by" example:"0"`
}

type MstUrusanPayloadModel struct {
	Tahun        int    `json:"tahun" example:"2023" validate:"required"`
	KodeUrusan   string `json:"kode_urusan" example:"1" validate:"required"`
	NamaUrusan   string `json:"nama_urusan" example:"URUSAN PEMERINTAHAN WAJIB YANG BERKAITAN DENGAN PELAYANAN DASAR" validate:"required"`
	DaerahKhusus []int  `json:"daerah_khusus" example:"440,589" validate:"required"`
	JenisPemda   []int  `json:"jenis_pemda" example:"1,2,3" validate:"required"`
}

// Payload khusus untuk update urusan (hanya field yang boleh diubah)
type MstUrusanUpdatePayloadModel struct {
	NamaUrusan   string `json:"nama_urusan" example:"URUSAN PEMERINTAHAN WAJIB YANG BERKAITAN DENGAN PELAYANAN DASAR" validate:"required"`
	DaerahKhusus []int  `json:"daerah_khusus" example:"440,589" validate:"required"`
	JenisPemda   []int  `json:"jenis_pemda" example:"1,2,3" validate:"required"`
}
