package dto type CreatePostalCodeRequest struct { PostalCode string `json:"postal_code" binding:"required"` ProvinceID string `json:"province_id" binding:"required"` CityID string `json:"city_id" binding:"required"` DistrictID string `json:"district_id" binding:"required"` SubdistrictID string `json:"subdistrict_id" binding:"required"` } type CreatePostalCodeResponse struct { ID string `json:"id"` PostalCode *string `json:"postal_code"` ProvinceID *string `json:"province_id"` CityID *string `json:"city_id"` DistrictID *string `json:"district_id"` SubdistrictID *string `json:"subdistrict_id"` MerchantID *string `json:"merchant_id"` } type PostalCodeFilterAllRequest struct { ID string `json:"id" form:"id"` PostalCode string `json:"postal_code" form:"postal_code"` ProvinceID string `json:"province_id" form:"province_id"` CityID string `json:"city_id" form:"city_id"` DistrictID string `json:"district_id" form:"district_id"` SubdistrictID string `json:"subdistrict_id" form:"subdistrict_id"` MerchantID string `json:"merchant_id" form:"merchant_id"` } type UpdatePostalCodeRequest struct { PostalCode string `json:"postal_code" binding:"required"` ProvinceID string `json:"province_id" binding:"required"` CityID string `json:"city_id" binding:"required"` DistrictID string `json:"district_id" binding:"required"` SubdistrictID string `json:"subdistrict_id" binding:"required"` } type ImportPostalCodeResponse struct { JobID string `json:"job_id,omitempty"` TotalRows int `json:"total_rows"` Imported int `json:"imported"` Skipped int `json:"skipped"` Logs []ImportLog `json:"logs"` Errors []string `json:"errors"` IsAsync bool `json:"is_async"` Message string `json:"message,omitempty"` }