update extractToken to read user_division_positions claim/jwt

This commit is contained in:
dpurbosakti
2025-10-06 12:41:09 +07:00
parent ec7cd9b929
commit 8de44b1e4d
@@ -188,15 +188,25 @@ func ExtractToken(r *http.Request, tokenType TokenType) (data *pa.AuthInfo, err
user_name := fmt.Sprintf("%v", claims["user_name"])
var userDivisionPositions []pa.DivisionPosition
if raw, ok := claims["user_division_position"]; ok && raw != nil {
if list, ok := raw.([]interface{}); ok {
for _, item := range list {
raw := claims["user_division_positions"]
if raw == nil {
fmt.Println("No user_division_positions found in claims")
} else {
list, ok := raw.([]interface{})
if !ok {
fmt.Printf("user_division_positions is not []interface{}, but %T\n", raw)
} else {
fmt.Printf("Found %d division positions\n", len(list))
for i, item := range list {
if m, ok := item.(map[string]interface{}); ok {
fmt.Printf("Item %d: %v\n", i, m)
dp := pa.DivisionPosition{
Division_Code: fmt.Sprintf("%v", m["Division_Code"]),
DivisionPosition_Code: fmt.Sprintf("%v", m["DivisionPosition_Code"]),
Division_Code: fmt.Sprintf("%v", m["division_code"]),
DivisionPosition_Code: fmt.Sprintf("%v", m["divisionPosition_code"]),
}
userDivisionPositions = append(userDivisionPositions, dp)
} else {
fmt.Printf("Item %d not map[string]interface{} but %T\n", i, item)
}
}
}