loginUser method
Implementation
Future<Map<String, dynamic>> loginUser(String phone, String otp) async {
final normalizeNumber = _normalizePhone(phone);
final res = await _api.post('/auth/api/login', {
"phone_number": normalizeNumber,
"otp": otp,
"product_token": productToken,
});
print(" LOGIN RESPONSE STRUCTURE:");
print("Full Response: $res");
print("User Object: ${res["user"]}");
if (res["success"] == true && res["token"] != null) {
String? userId;
String? tenantId; // ← Add this
if (res["user"] != null) {
final userObj = res["user"];
userId = userObj["id"]?.toString();
tenantId = userObj["tenant_id"]?.toString();
print("Extracting from user object:");
print("user.id: ${userObj["id"]}");
print("user.tenant_id: ${userObj["tenant_id"]}");
}
final role = res["active_session"]?["role_name"] ?? "employee";
print(" EXTRACTED VALUES:");
print(" UserId: $userId");
print("TenantId: $tenantId");
print("Role: $role");
// Save with tenantId
await _saveSession(
res["token"],
normalizeNumber,
role: role,
userId: userId,
tenantId: tenantId,
);
}
return res;
}