Changes in / [33c69d6:2d64b2e]
- Location:
- iknow-api
- Files:
-
- 6 edited
-
Controllers/UserController.cs (modified) (1 diff)
-
Data/AppDbContext.cs (modified) (1 diff)
-
Repository/Implementations/UserRepository.cs (modified) (1 diff)
-
Repository/Interface/IUserRepository.cs (modified) (1 diff)
-
Services/Implementations/UserService.cs (modified) (1 diff)
-
Services/Interfaces/IUserService.cs (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
iknow-api/Controllers/UserController.cs
r33c69d6 r2d64b2e 29 29 } 30 30 return null; 31 31 32 32 } 33 //"semesters": [34 // {35 // "id": 1,36 // "semester": "Зимски(2025/2026)",37 // "direction": "PIT23(2023)",38 // "quota": "Не плаќа-Редовен(2023)",39 // "note": "",40 // "studentCom": "Ги имам си...",41 // "sum": "0,30",42 // "paid": "0,00",43 // "ukim": "",44 // "createdOn": "22.09.2025",45 // "dateChanged": "22.09.2025",46 // "credits": "0,01",47 // "type": "Ред.",48 // "doc": "Не",49 // "doc1": "Не",50 // "verified": "Не",51 // "taxes": "0,00",52 // "signatures": "0/5",53 // "status": "валиден",54 // "completed": "Не"55 // },56 // ]57 //}58 [Authorize]59 [HttpGet("getSemesters")]60 public async Task<IActionResult> getSemesters()61 {62 var authHeader = Request.Headers["Authorization"].ToString();63 if (authHeader.StartsWith("Bearer "))64 {65 var token = authHeader.Substring("Bearer ".Length).Trim();66 // token = your JWT67 var userData = await _userService.GetUserSemesters(token);68 var results = new List<object>();69 70 for(int i=0; i<userData.Count; i++)71 {72 var newResult = new73 {74 id = userData[i].Id,75 semester = (userData[i].Type == 0 ? "Зимски" : "Летен") + $"({userData[i].Year}/{userData[i].Year + 1})",76 direction = userData[i].Major?.Name ?? "",77 quota = userData[i].QuotaType.ToString(),78 note = "",79 studentCom = "",80 sum = "0,00",81 paid = "0,00",82 ukim = "",83 createdOn = DateTime.Now.ToString("dd.MM.yyyy"),84 dateChanged = DateTime.Now.ToString("dd.MM.yyyy"),85 credits = "0,00",86 type = "Ред.",87 doc = "Не",88 doc1 = "Не",89 verified = "Не",90 taxes = "0,00",91 signatures = "0/5",92 status = "валиден",93 completed = "Не"94 };95 results.Add(newResult);96 }97 if (userData == null) return Ok(new { info = "can't get info" });98 return Ok(new { semesters = results });99 }100 return null;101 102 }103 // {104 // "user": [105 // {106 // "id": 2,107 // "userId": 1,108 // "user": null,109 // "year": 2025,110 // "type": 1,111 // "quotaType": "privatna",112 // "majorId": 1,113 // "major": {114 // "id": 1,115 // "name": "PIT(2023)",116 // "subjects": null117 // },118 // "users": null,119 // "semesterSubjects": null120 // },121 // {122 // "id": 1,123 // "userId": 1,124 // "user": null,125 // "year": 2025,126 // "type": 0,127 // "quotaType": "privatna",128 // "majorId": 1,129 // "major": {130 // "id": 1,131 // "name": "PIT(2023)",132 // "subjects": null133 // },134 // "users": null,135 // "semesterSubjects": null136 // }137 // ]138 //}139 33 } 140 34 } -
iknow-api/Data/AppDbContext.cs
r33c69d6 r2d64b2e 19 19 public DbSet<Major> Majors { get; set; } 20 20 public DbSet<PassedSubject> PassedSubjects { get; set; } 21 public DbSet<EnrolledSemesters> EnrolledSemesters { get; set; }22 21 23 22 -
iknow-api/Repository/Implementations/UserRepository.cs
r33c69d6 r2d64b2e 63 63 return await _context.User.CountAsync(); 64 64 } 65 public async Task<List<EnrolledSemesters>> GetUserSemestersAsync(int id)66 {67 return await _context.EnrolledSemesters68 .Include(es => es.Major)69 .Where(es => es.UserId == id)70 .ToListAsync();71 }72 65 73 66 } -
iknow-api/Repository/Interface/IUserRepository.cs
r33c69d6 r2d64b2e 12 12 Task<int> GetUsersCountAsync(); 13 13 Task<User?> GetUserByIdAsync(int id); 14 Task<List<EnrolledSemesters>?> GetUserSemestersAsync(int id);15 14 Task<User?> GetOnlyUserByIdAsync(int id); 16 15 -
iknow-api/Services/Implementations/UserService.cs
r33c69d6 r2d64b2e 33 33 else 34 34 return user; 35 }36 public async Task<List<EnrolledSemesters>> GetUserSemesters(string JWT)37 {38 var userId = ExtractUserIdFromJwt(JWT);39 if (userId == null)40 return null;41 42 // Now you can use userId to fetch user data43 var semesters = await _userRepository.GetUserSemestersAsync(userId.Value);44 if (semesters == null)45 return null;46 else47 return semesters;48 35 } 49 36 -
iknow-api/Services/Interfaces/IUserService.cs
r33c69d6 r2d64b2e 6 6 { 7 7 Task<User> GetUserData(string userId); 8 Task<List<EnrolledSemesters>> GetUserSemesters(string userId);9 8 } 10 9 }
Note:
See TracChangeset
for help on using the changeset viewer.
