feat: implement geometry domain with repository, service, and data conversion utilities

This commit is contained in:
2026-05-06 06:43:57 +07:00
parent fcb7f321dd
commit fe9543d896
9 changed files with 335 additions and 159 deletions

View File

@@ -11,9 +11,7 @@ type SearchGeometryDto struct {
}
type SearchGeometriesByEntityNameDto struct {
// Entity name keyword for searching. FE will render the result list by entity name.
Name string `json:"name" query:"name" validate:"required,max=255"`
// Cursor is entity UUID (id < cursor).
Cursor string `json:"cursor" query:"cursor" validate:"omitempty,uuid"`
Limit int `json:"limit" query:"limit" validate:"omitempty,min=1,max=100"`
}

View File

@@ -2,8 +2,7 @@ package response
import "encoding/json"
// SearchGeometriesByEntityNameResponse groups geometries by matched entities.
// Cursor pagination is based on entity_id (descending).
type SearchGeometriesByEntityNameResponse struct {
Items []*EntityGeometriesSearchItem `json:"items"`
NextCursor string `json:"next_cursor,omitempty"`