package validation type Create struct { Name string `json:"name" validate:"required_strict,min=3,max=50"` Address string `json:"address" validate:"required_strict"` AreaId uint `json:"area_id" validate:"required_strict,number,gt=0"` } type Update struct { Name *string `json:"name,omitempty" validate:"omitempty,max=50"` Address *string `json:"address,omitempty" validate:"omitempty"` AreaId *uint `json:"area_id,omitempty" validate:"omitempty,number,gt=0"` } type Query struct { Page int `query:"page" validate:"omitempty,number,min=1"` Limit int `query:"limit" validate:"omitempty,number,min=1,max=500"` Search string `query:"search" validate:"omitempty,max=50"` AreaId int `query:"area_id" validate:"omitempty,number,gt=0"` }