All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
41 lines
1.7 KiB
Go
41 lines
1.7 KiB
Go
package dto
|
|
|
|
type DataTableRequest struct {
|
|
Draw int `json:"draw" binding:"required"`
|
|
Start int `json:"start"`
|
|
Length int `json:"length"`
|
|
Search DatatableSearchCriteria `json:"search"`
|
|
Order []DatatableOrderQuery `json:"order"`
|
|
Columns []DatatableColumnConfig `json:"columns"`
|
|
AdditionalFilter map[string]interface{} `json:"additional_filter"`
|
|
}
|
|
type DatatableOrderQuery struct {
|
|
Column int `json:"column"` // Indeks kolom yang di-sort (dimulai dari 0)
|
|
Dir string `json:"dir"` // Arah sorting: "asc" atau "desc"
|
|
}
|
|
type DatatableSearchCriteria struct {
|
|
Value string `json:"value"`
|
|
Regex bool `json:"regex"`
|
|
}
|
|
|
|
type DatatableColumnConfig struct {
|
|
Data string `json:"data"` // Nama properti data (contoh: "name")
|
|
Name string `json:"name"` // Nama kolom opsional yang diset di frontend
|
|
Searchable bool `json:"searchable"` // Apakah kolom ini bisa dicari
|
|
Orderable bool `json:"orderable"` // Apakah kolom ini bisa di-sort
|
|
Search DatatableSearchCriteria `json:"search"` // Pencarian spesifik khusus untuk kolom ini saja
|
|
}
|
|
|
|
type DataTableResponse struct {
|
|
Draw int `json:"draw"`
|
|
RecordsTotal int64 `json:"recordsTotal"`
|
|
RecordsFiltered int64 `json:"recordsFiltered"`
|
|
Data []map[string]interface{} `json:"data"`
|
|
}
|
|
|
|
type DataTableColDef struct {
|
|
Field string `json:"field"`
|
|
Alias string `json:"alias"`
|
|
Formatter *func() `json:"formatter"`
|
|
}
|