42 lines
999 B
Go
42 lines
999 B
Go
package handler
|
|
|
|
import (
|
|
"encoding/json"
|
|
"net/http"
|
|
"vctp/server/models"
|
|
)
|
|
|
|
func writeJSON(w http.ResponseWriter, statusCode int, payload any) {
|
|
w.Header().Set("Content-Type", "application/json")
|
|
w.WriteHeader(statusCode)
|
|
_ = json.NewEncoder(w).Encode(payload)
|
|
}
|
|
|
|
func writeJSONStatus(w http.ResponseWriter, statusCode int, status string) {
|
|
writeJSON(w, statusCode, models.StatusResponse{
|
|
Status: status,
|
|
})
|
|
}
|
|
|
|
func writeJSONStatusMessage(w http.ResponseWriter, statusCode int, status, message string) {
|
|
writeJSON(w, statusCode, models.StatusMessageResponse{
|
|
Status: status,
|
|
Message: message,
|
|
})
|
|
}
|
|
|
|
func writeJSONOK(w http.ResponseWriter) {
|
|
writeJSONStatus(w, http.StatusOK, "OK")
|
|
}
|
|
|
|
func writeJSONOKMessage(w http.ResponseWriter, message string) {
|
|
writeJSONStatusMessage(w, http.StatusOK, "OK", message)
|
|
}
|
|
|
|
func writeJSONError(w http.ResponseWriter, statusCode int, message string) {
|
|
writeJSON(w, statusCode, models.ErrorResponse{
|
|
Status: "ERROR",
|
|
Message: message,
|
|
})
|
|
}
|