package pkg import ( "encoding/json" "net/http" "strconv" ) type ( BaseHandler struct{} ) func (bh *BaseHandler) ToJSON(w http.ResponseWriter, statusCode int, data any) { w.Header().Set("Content-Type", "application/json") w.WriteHeader(statusCode) json.NewEncoder(w).Encode(data) } func (bh *BaseHandler) ParamToInt(param string, defaultValue ...int) int { if param == "" { if len(defaultValue) > 0 { return defaultValue[0] } return 0 } value, err := strconv.Atoi(param) if err != nil { if len(defaultValue) > 0 { return defaultValue[0] } return 0 } return value }