update perubahan

This commit is contained in:
2025-09-29 17:41:21 +07:00
parent 12963e1fb3
commit f81f536e13
4 changed files with 711 additions and 181 deletions
+24
View File
@@ -3,7 +3,9 @@ package models
import (
"database/sql"
"database/sql/driver"
"encoding/json"
"net/http"
"reflect"
"strconv"
"time"
)
@@ -199,6 +201,28 @@ func GetStatusCodeFromMeta(metaCode interface{}) int {
return statusCode
}
// extractCode extracts the code field from metaData using reflection
func ExtractCode(metaData interface{}) interface{} {
v := reflect.ValueOf(metaData)
switch v.Kind() {
case reflect.Struct:
codeField := v.FieldByName("Code")
if codeField.IsValid() {
return codeField.Interface()
}
case reflect.Map:
if m, ok := metaData.(map[string]interface{}); ok {
return m["code"]
}
case reflect.String:
var metaMap map[string]interface{}
if err := json.Unmarshal([]byte(metaData.(string)), &metaMap); err == nil {
return metaMap["code"]
}
}
return nil
}
// Validation constants
const (
StatusDraft = "draft"