From caace928ac81c284629ee50942d72179d4da9784 Mon Sep 17 00:00:00 2001 From: Biswa Kalyan Bhuyan Date: Thu, 24 Apr 2025 09:13:07 +0530 Subject: feat: Fix loan API type assertion and complete core loan features - Resolve interface conversion panic in loan handlers by correcting user type assertions from *models.User to models.User - Finalize loan management API integration with frontend components - Implement remaining loan calculation logic and CRUD operations - Connect loan display components to backend APIs as per Phase 3 - Update project status in README.md to reflect completed loan features - Add CORS middleware configuration for frontend-backend communication This commit completes core loan management functionality and fixes critical type safety issues in the API handlers, enabling proper user context handling. --- backend/internal/api/v1/loans/loans.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'backend/internal') diff --git a/backend/internal/api/v1/loans/loans.go b/backend/internal/api/v1/loans/loans.go index 06d96b0..1366b3b 100644 --- a/backend/internal/api/v1/loans/loans.go +++ b/backend/internal/api/v1/loans/loans.go @@ -22,7 +22,7 @@ func GetLoans() gin.HandlerFunc { return } - userObj := user.(*models.User) + userObj := user.(models.User) var loans []models.Loan // Fetch all loans for the user @@ -44,7 +44,7 @@ func GetLoanByID() gin.HandlerFunc { c.JSON(http.StatusUnauthorized, gin.H{"error": "Unauthorized"}) return } - userObj := user.(*models.User) + userObj := user.(models.User) // Get loan ID from URL parameter loanID, err := strconv.ParseUint(c.Param("id"), 10, 32) @@ -78,7 +78,7 @@ func CreateLoan() gin.HandlerFunc { c.JSON(http.StatusUnauthorized, gin.H{"error": "Unauthorized"}) return } - userObj := user.(*models.User) + userObj := user.(models.User) // Define a struct to bind the request JSON var input struct { @@ -141,7 +141,7 @@ func UpdateLoan() gin.HandlerFunc { c.JSON(http.StatusUnauthorized, gin.H{"error": "Unauthorized"}) return } - userObj := user.(*models.User) + userObj := user.(models.User) // Get loan ID from URL parameter loanID, err := strconv.ParseUint(c.Param("id"), 10, 32) @@ -217,7 +217,7 @@ func DeleteLoan() gin.HandlerFunc { c.JSON(http.StatusUnauthorized, gin.H{"error": "Unauthorized"}) return } - userObj := user.(*models.User) + userObj := user.(models.User) // Get loan ID from URL parameter loanID, err := strconv.ParseUint(c.Param("id"), 10, 32) -- cgit v1.2.3-59-g8ed1b