Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
school-portal
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Muhammad Suleman
school-portal
Commits
7ae44194
Commit
7ae44194
authored
Jul 13, 2022
by
Muhammad Suleman
Committed by
Usman Siddiqui
Jul 13, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Course
parent
6ce91b86
Changes
36
Hide whitespace changes
Inline
Side-by-side
Showing
36 changed files
with
302 additions
and
166 deletions
+302
-166
mvnw
mvnw
+0
-0
CourseController.java
.../java/com/school/project/controller/CourseController.java
+4
-5
DepartmentController.java
...a/com/school/project/controller/DepartmentController.java
+2
-2
RegistrationController.java
...com/school/project/controller/RegistrationController.java
+7
-8
StudentController.java
...java/com/school/project/controller/StudentController.java
+28
-11
UserController.java
...in/java/com/school/project/controller/UserController.java
+7
-1
CourseRegisterDTO.java
...java/com/school/project/dto/course/CourseRegisterDTO.java
+11
-0
DepartmentRegisterDTO.java
.../school/project/dto/department/DepartmentRegisterDTO.java
+10
-0
StudentCourseRegistrationDTO.java
...ool/project/dto/student/StudentCourseRegistrationDTO.java
+11
-0
StudentCoursesDTO.java
...ava/com/school/project/dto/student/StudentCoursesDTO.java
+21
-0
StudentViewDataDTO.java
...va/com/school/project/dto/student/StudentViewDataDTO.java
+12
-0
UserRegistrationDTO.java
...ool/project/dto/userRegistration/UserRegistrationDTO.java
+1
-1
StudentCoursesMapper.java
.../java/com/school/project/mapper/StudentCoursesMapper.java
+19
-0
StudentViewDataMapper.java
...java/com/school/project/mapper/StudentViewDataMapper.java
+21
-0
Course.java
src/main/java/com/school/project/model/Course.java
+7
-7
Student.java
src/main/java/com/school/project/model/Student.java
+11
-5
Teacher.java
src/main/java/com/school/project/model/Teacher.java
+3
-2
Admin.java
...java/com/school/project/model/userRegistration/Admin.java
+2
-2
User.java
.../java/com/school/project/model/userRegistration/User.java
+6
-4
CourseRepository.java
.../project/repository/modelRepositery/CourseRepository.java
+1
-0
StudentRepository.java
...project/repository/modelRepositery/StudentRepository.java
+2
-0
OAuth2ServerConfiguration.java
...om/school/project/security/OAuth2ServerConfiguration.java
+2
-2
CourseService.java
...java/com/school/project/service/course/CourseService.java
+2
-10
CourseServiceImp.java
...a/com/school/project/service/course/CourseServiceImp.java
+2
-25
CourseRegistrationService.java
...service/courseRegistration/CourseRegistrationService.java
+11
-0
CourseRegistrationServiceImpl.java
...ice/courseRegistration/CourseRegistrationServiceImpl.java
+41
-0
DepartmentService.java
.../school/project/service/department/DepartmentService.java
+2
-14
DepartmentServiceImp.java
...hool/project/service/department/DepartmentServiceImp.java
+7
-34
StudentService.java
...va/com/school/project/service/student/StudentService.java
+6
-4
StudentServiceImpl.java
...om/school/project/service/student/StudentServiceImpl.java
+26
-12
AdminRegistrationService.java
...vice/userRegistration/admin/AdminRegistrationService.java
+2
-2
AdminRegistrationServiceImpl.java
.../userRegistration/admin/AdminRegistrationServiceImpl.java
+5
-3
StudentRegistrationService.java
.../userRegistration/student/StudentRegistrationService.java
+2
-2
StudentRegistrationServiceImpl.java
...rRegistration/student/StudentRegistrationServiceImpl.java
+3
-5
TeacherRegistrationService.java
.../userRegistration/teacher/TeacherRegistrationService.java
+2
-2
TeacherRegistrationServiceImpl.java
...rRegistration/teacher/TeacherRegistrationServiceImpl.java
+3
-3
No files found.
mvnw
100755 → 100644
View file @
7ae44194
File mode changed from 100755 to 100644
src/main/java/com/school/project/controller/CourseController.java
View file @
7ae44194
package
com
.
school
.
project
.
controller
;
import
com.fasterxml.jackson.databind.annotation.JsonAppend
;
import
com.school.project.dto.CourseDTO
;
import
com.school.project.repository.modelRepositery.CourseRepository
;
import
com.school.project.dto.course.CourseRegisterDTO
;
import
com.school.project.service.course.CourseServiceImp
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
...
...
@@ -20,10 +19,10 @@ public class CourseController {
private
CourseServiceImp
courseServiceImp
;
@PostMapping
(
"/save"
)
private
ResponseEntity
saveCourse
(
@RequestBody
CourseDTO
course
)
{
private
ResponseEntity
saveCourse
(
@RequestBody
Course
Register
DTO
course
)
{
try
{
courseServiceImp
.
saveCourse
(
course
);
return
ResponseEntity
.
ok
(
"
Department
Saved"
);
return
ResponseEntity
.
ok
(
"
Course
Saved"
);
}
catch
(
Exception
e
)
{
throw
new
ResponseStatusException
(
HttpStatus
.
BAD_REQUEST
,
"Data Is Not Correct"
,
e
);
}
...
...
src/main/java/com/school/project/controller/DepartmentController.java
View file @
7ae44194
package
com
.
school
.
project
.
controller
;
import
com.school.project.dto.
Department
DTO
;
import
com.school.project.dto.
department.DepartmentRegister
DTO
;
import
com.school.project.service.department.DepartmentServiceImp
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
...
...
@@ -19,7 +19,7 @@ public class DepartmentController {
private
DepartmentServiceImp
departmentServiceImp
;
@PostMapping
(
"/save"
)
private
ResponseEntity
saveDepartment
(
@RequestBody
DepartmentDTO
department
){
private
ResponseEntity
saveDepartment
(
@RequestBody
Department
Register
DTO
department
){
try
{
departmentServiceImp
.
saveDepartment
(
department
);
return
ResponseEntity
.
ok
(
"Department Saved"
);
...
...
src/main/java/com/school/project/controller/RegistrationController.java
View file @
7ae44194
...
...
@@ -4,11 +4,10 @@ package com.school.project.controller;
import
com.school.project.dto.userRegistration.AdminRegistrationDTO
;
import
com.school.project.dto.userRegistration.StudentRegistrationDTO
;
import
com.school.project.dto.userRegistration.TeacherRegistrationDTO
;
import
com.school.project.dto.userRegistration.UserDTO
;
import
com.school.project.dto.userRegistration.User
Registration
DTO
;
import
com.school.project.service.userRegistration.admin.AdminRegistrationService
;
import
com.school.project.service.userRegistration.student.StudentRegistrationService
;
import
com.school.project.service.userRegistration.teacher.TeacherRegistrationService
;
import
lombok.AllArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
...
...
@@ -32,9 +31,9 @@ public class RegistrationController {
private
AdminRegistrationService
adminRegistrationService
;
@PostMapping
(
"/student"
)
public
ResponseEntity
<
UserDTO
>
registerStudent
(
@RequestBody
StudentRegistrationDTO
student
)
{
public
ResponseEntity
<
User
Registration
DTO
>
registerStudent
(
@RequestBody
StudentRegistrationDTO
student
)
{
try
{
UserDTO
userDTO
=
studentRegistrationService
.
registerStudent
(
student
);
User
Registration
DTO
userDTO
=
studentRegistrationService
.
registerStudent
(
student
);
return
ResponseEntity
.
ok
(
userDTO
);
}
catch
(
Exception
e
)
{
throw
new
ResponseStatusException
(
HttpStatus
.
BAD_REQUEST
,
"Data is not correct"
,
e
);
...
...
@@ -42,9 +41,9 @@ public class RegistrationController {
}
@PostMapping
(
"/teacher"
)
public
ResponseEntity
<
UserDTO
>
registerTeacher
(
@RequestBody
TeacherRegistrationDTO
teacher
)
{
public
ResponseEntity
<
User
Registration
DTO
>
registerTeacher
(
@RequestBody
TeacherRegistrationDTO
teacher
)
{
try
{
UserDTO
userDTO
=
teacherRegistrationService
.
registerTeacher
(
teacher
);
User
Registration
DTO
userDTO
=
teacherRegistrationService
.
registerTeacher
(
teacher
);
return
ResponseEntity
.
ok
(
userDTO
);
}
catch
(
Exception
e
)
{
throw
new
ResponseStatusException
(
HttpStatus
.
BAD_REQUEST
,
"Data is not correct"
,
e
);
...
...
@@ -52,9 +51,9 @@ public class RegistrationController {
}
@PostMapping
(
"/admin"
)
public
ResponseEntity
<
UserDTO
>
registerAdmin
(
@RequestBody
AdminRegistrationDTO
admin
)
{
public
ResponseEntity
<
User
Registration
DTO
>
registerAdmin
(
@RequestBody
AdminRegistrationDTO
admin
)
{
try
{
UserDTO
userDTO
=
adminRegistrationService
.
registerAdmin
(
admin
);
User
Registration
DTO
userDTO
=
adminRegistrationService
.
registerAdmin
(
admin
);
return
ResponseEntity
.
ok
(
userDTO
);
}
catch
(
Exception
e
)
{
throw
new
ResponseStatusException
(
HttpStatus
.
BAD_REQUEST
,
"Data is not correct"
,
e
);
...
...
src/main/java/com/school/project/controller/StudentController.java
View file @
7ae44194
package
com
.
school
.
project
.
controller
;
import
com.school.project.model.Student
;
import
com.school.project.dto.student.StudentCourseRegistrationDTO
;
import
com.school.project.dto.student.StudentCoursesDTO
;
import
com.school.project.dto.student.StudentViewDataDTO
;
import
com.school.project.service.courseRegistration.CourseRegistrationService
;
import
com.school.project.service.student.StudentServiceImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.security.core.Authentication
;
import
org.springframework.security.core.annotation.CurrentSecurityContext
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
java.security.Principal
;
import
java.util.List
;
import
java.util.Set
;
@RestController
@RequestMapping
(
"/student"
)
...
...
@@ -18,12 +22,25 @@ public class StudentController {
@Autowired
private
StudentServiceImpl
studentService
;
@GetMapping
(
"/data/{id}"
)
public
Student
getUserDetails
(
@CurrentSecurityContext
(
expression
=
"authentication"
)
Authentication
authentication
,
@PathVariable
(
"id"
)
Long
id
)
{
@Autowired
private
CourseRegistrationService
courseRegistrationService
;
@GetMapping
(
""
)
public
StudentViewDataDTO
getUserDetails
(
@CurrentSecurityContext
(
expression
=
"authentication"
)
Authentication
authentication
)
{
return
studentService
.
viewData
(
authentication
.
getName
());
}
@GetMapping
(
"/course"
)
public
StudentCoursesDTO
showCourses
(
Principal
principal
)
{
return
studentService
.
viewCourses
(
studentService
.
getUserId
(
principal
.
getName
()));
}
@PostMapping
(
"/course/register"
)
public
void
registerCourses
(
Principal
principal
,
@RequestBody
Set
<
StudentCourseRegistrationDTO
>
courses
)
{
Student
student
=
studentService
.
viewData
(
id
);
// Student student = studentService.viewData(authentication.getName());
return
student
;
courseRegistrationService
.
courseRegistration
(
studentService
.
getUserId
(
principal
.
getName
()),
courses
);
}
}
src/main/java/com/school/project/controller/UserController.java
View file @
7ae44194
...
...
@@ -6,6 +6,7 @@ import org.springframework.web.bind.annotation.GetMapping;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.security.Principal
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
@@ -15,15 +16,20 @@ public class UserController {
@GetMapping
(
"/user"
)
public
List
<
String
>
currentUserName
(
@CurrentSecurityContext
(
expression
=
"authentication"
)
Authentication
authentication
)
{
Authentication
authentication
,
Principal
principal
)
{
List
<
String
>
data
=
new
ArrayList
<>();
data
.
add
(
authentication
.
getName
());
data
.
add
(
String
.
valueOf
(
authentication
.
getAuthorities
()));
data
.
add
(
String
.
valueOf
(
authentication
.
getCredentials
()));
data
.
add
(
String
.
valueOf
(
authentication
.
getDetails
()));
data
.
add
(
String
.
valueOf
(
authentication
.
getPrincipal
()));
data
.
add
(
"\nNow Here Is Principal Details\n"
);
data
.
add
(
principal
.
getName
());
return
data
;
}
}
src/main/java/com/school/project/dto/
Course
DTO.java
→
src/main/java/com/school/project/dto/
course/CourseRegister
DTO.java
View file @
7ae44194
package
com
.
school
.
project
.
dto
;
package
com
.
school
.
project
.
dto
.
course
;
import
com.school.project.model.Student
;
import
com.school.project.model.Teacher
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
CourseDTO
{
public
class
Course
Register
DTO
{
private
String
courseName
;
...
...
src/main/java/com/school/project/dto/
Department
DTO.java
→
src/main/java/com/school/project/dto/
department/DepartmentRegister
DTO.java
View file @
7ae44194
package
com
.
school
.
project
.
dto
;
package
com
.
school
.
project
.
dto
.
department
;
import
lombok.Data
;
@Data
public
class
DepartmentDTO
{
public
class
Department
Register
DTO
{
private
String
name
;
...
...
src/main/java/com/school/project/dto/student/StudentCourseRegistrationDTO.java
0 → 100644
View file @
7ae44194
package
com
.
school
.
project
.
dto
.
student
;
import
lombok.Data
;
@Data
public
class
StudentCourseRegistrationDTO
{
private
String
courseName
;
}
src/main/java/com/school/project/dto/student/StudentCoursesDTO.java
0 → 100644
View file @
7ae44194
package
com
.
school
.
project
.
dto
.
student
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.Course
;
import
jdk.jfr.DataAmount
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
import
java.util.List
;
import
java.util.Set
;
@Data
@EqualsAndHashCode
(
exclude
=
"courseList"
)
@ToString
(
exclude
=
"courseList"
)
public
class
StudentCoursesDTO
{
private
String
studentName
;
private
String
studentRollNumber
;
private
Set
<
Course
>
courseList
;
}
src/main/java/com/school/project/dto/student/StudentViewDataDTO.java
0 → 100644
View file @
7ae44194
package
com
.
school
.
project
.
dto
.
student
;
import
lombok.Data
;
@Data
public
class
StudentViewDataDTO
{
private
String
name
;
private
String
rollNumber
;
private
Long
age
;
}
src/main/java/com/school/project/dto/userRegistration/UserDTO.java
→
src/main/java/com/school/project/dto/userRegistration/User
Registration
DTO.java
View file @
7ae44194
...
...
@@ -6,7 +6,7 @@ import lombok.Data;
@Data
@AllArgsConstructor
public
class
UserDTO
{
public
class
User
Registration
DTO
{
private
Long
userId
;
private
String
email
;
...
...
src/main/java/com/school/project/mapper/StudentCoursesMapper.java
0 → 100644
View file @
7ae44194
package
com
.
school
.
project
.
mapper
;
import
com.school.project.dto.student.StudentCoursesDTO
;
import
com.school.project.model.Student
;
import
org.springframework.stereotype.Component
;
@Component
public
class
StudentCoursesMapper
{
public
StudentCoursesDTO
modelToDto
(
Student
student
)
{
StudentCoursesDTO
coursesDTO
=
new
StudentCoursesDTO
();
coursesDTO
.
setStudentName
(
student
.
getName
());
coursesDTO
.
setStudentRollNumber
(
student
.
getRollNumber
());
coursesDTO
.
setCourseList
(
student
.
getCourseLists
());
return
coursesDTO
;
}
}
src/main/java/com/school/project/mapper/StudentViewDataMapper.java
0 → 100644
View file @
7ae44194
package
com
.
school
.
project
.
mapper
;
import
com.school.project.dto.student.StudentViewDataDTO
;
import
com.school.project.model.Student
;
import
org.mapstruct.Mapper
;
import
org.springframework.stereotype.Component
;
@Component
public
class
StudentViewDataMapper
{
public
StudentViewDataDTO
modelToDto
(
Student
student
)
{
StudentViewDataDTO
studentViewDataDTO
=
new
StudentViewDataDTO
();
studentViewDataDTO
.
setName
(
student
.
getName
());
studentViewDataDTO
.
setRollNumber
(
student
.
getRollNumber
());
studentViewDataDTO
.
setAge
(
student
.
getAge
());
return
studentViewDataDTO
;
}
}
src/main/java/com/school/project/model/Course.java
View file @
7ae44194
...
...
@@ -2,18 +2,18 @@ package com.school.project.model;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.sun.istack.NotNull
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
lombok.*
;
import
javax.persistence.*
;
import
java.util.List
;
import
java.util.Set
;
@Data
@Entity
()
@NoArgsConstructor
@Table
(
name
=
"Course"
)
@EqualsAndHashCode
(
exclude
=
{
"studentList"
,
"teacherList"
})
@ToString
(
exclude
=
{
"studentList"
,
"teacherList"
})
public
class
Course
{
@Id
...
...
@@ -28,12 +28,12 @@ public class Course {
@Column
(
name
=
"courseCode"
,
unique
=
true
)
private
String
courseCode
;
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseLists"
)
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseLists"
,
cascade
=
CascadeType
.
MERGE
)
@JsonIgnore
private
Lis
t
<
Student
>
studentList
;
private
Se
t
<
Student
>
studentList
;
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseList"
)
@JsonIgnore
private
Lis
t
<
Teacher
>
teacherList
;
private
Se
t
<
Teacher
>
teacherList
;
}
src/main/java/com/school/project/model/Student.java
View file @
7ae44194
...
...
@@ -5,17 +5,23 @@ import com.school.project.model.Course;
import
com.school.project.model.userRegistration.User
;
import
com.sun.istack.NotNull
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.NoArgsConstructor
;
import
lombok.ToString
;
import
org.hibernate.annotations.Fetch
;
import
org.hibernate.annotations.FetchMode
;
import
org.springframework.context.annotation.Lazy
;
import
javax.persistence.*
;
import
java.util.List
;
import
java.util.Set
;
@Data
@Entity
()
@NoArgsConstructor
@Table
(
name
=
"Student"
)
@EqualsAndHashCode
(
exclude
=
{
"courseLists"
})
@ToString
(
exclude
=
{
"courseLists"
,
"studentAppUser"
})
public
class
Student
{
@Id
...
...
@@ -36,18 +42,18 @@ public class Student {
private
Long
age
;
@JsonIgnore
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
cascade
=
{
CascadeType
.
MERGE
})
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
cascade
=
{
CascadeType
.
ALL
})
@Fetch
(
value
=
FetchMode
.
SELECT
)
@JoinTable
(
name
=
"studentsCourses"
,
joinColumns
=
{
@JoinColumn
(
name
=
"student_id"
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"course_id"
)}
)
private
Lis
t
<
Course
>
courseLists
;
private
Se
t
<
Course
>
courseLists
;
@OneToOne
@OneToOne
(
fetch
=
FetchType
.
LAZY
)
@MapsId
@JoinColumn
(
name
=
"student_id"
)
@Lazy
@ToString
.
Exclude
@JsonIgnore
private
User
studentAppUser
;
}
src/main/java/com/school/project/model/Teacher.java
View file @
7ae44194
...
...
@@ -12,6 +12,7 @@ import org.springframework.context.annotation.Lazy;
import
javax.persistence.*
;
import
java.util.List
;
import
java.util.Set
;
@Data
@Entity
...
...
@@ -43,13 +44,13 @@ public class Teacher {
private
Department
department
;
@JsonIgnore
@ManyToMany
(
fetch
=
FetchType
.
EAGER
,
cascade
=
{
CascadeType
.
MERGE
})
@ManyToMany
(
fetch
=
FetchType
.
EAGER
,
cascade
=
{
CascadeType
.
ALL
})
@JoinTable
(
name
=
"teachersCourses"
,
joinColumns
=
{
@JoinColumn
(
name
=
"teacher_id"
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"course_id"
)}
)
private
Lis
t
<
Course
>
courseList
;
private
Se
t
<
Course
>
courseList
;
@OneToOne
(
fetch
=
FetchType
.
LAZY
)
@MapsId
...
...
src/main/java/com/school/project/model/userRegistration/Admin.java
View file @
7ae44194
...
...
@@ -21,10 +21,10 @@ public class Admin {
@Column
(
name
=
"admin_name"
)
private
String
name
;
@OneToOne
@OneToOne
(
fetch
=
FetchType
.
LAZY
)
@MapsId
@JoinColumn
(
name
=
"admin_id"
)
@Lazy
@ToString
.
Exclude
@JsonIgnore
private
User
adminAppUser
;
}
src/main/java/com/school/project/model/userRegistration/User.java
View file @
7ae44194
package
com
.
school
.
project
.
model
.
userRegistration
;
import
com.fasterxml.jackson.annotation.JsonFilter
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.Student
;
import
com.school.project.model.Teacher
;
...
...
@@ -36,19 +35,22 @@ public class User {
@NotNull
private
Role
role
;
@OneToOne
(
mappedBy
=
"studentAppUser"
,
cascade
=
{
CascadeType
.
MERGE
},
fetch
=
FetchType
.
LAZY
)
@OneToOne
(
mappedBy
=
"studentAppUser"
,
cascade
=
{
CascadeType
.
ALL
},
fetch
=
FetchType
.
LAZY
)
@PrimaryKeyJoinColumn
@ToString
.
Exclude
@JsonIgnore
private
Student
studentUser
;
@OneToOne
(
mappedBy
=
"teacherAppUser"
,
cascade
=
{
CascadeType
.
MERGE
},
fetch
=
FetchType
.
LAZY
)
@OneToOne
(
mappedBy
=
"teacherAppUser"
,
cascade
=
{
CascadeType
.
ALL
},
fetch
=
FetchType
.
LAZY
)
@PrimaryKeyJoinColumn
@ToString
.
Exclude
@JsonIgnore
private
Teacher
teacherUser
;
@OneToOne
(
mappedBy
=
"adminAppUser"
,
cascade
=
{
CascadeType
.
MERGE
},
fetch
=
FetchType
.
LAZY
)
@OneToOne
(
mappedBy
=
"adminAppUser"
,
cascade
=
{
CascadeType
.
ALL
},
fetch
=
FetchType
.
LAZY
)
@PrimaryKeyJoinColumn
@ToString
.
Exclude
@JsonIgnore
private
Admin
adminUser
;
}
src/main/java/com/school/project/repository/modelRepositery/CourseRepository.java
View file @
7ae44194
...
...
@@ -4,4 +4,5 @@ import com.school.project.model.Course;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
CourseRepository
extends
JpaRepository
<
Course
,
Long
>
{
Course
findByCourseName
(
String
name
);
}
src/main/java/com/school/project/repository/modelRepositery/StudentRepository.java
View file @
7ae44194
...
...
@@ -4,4 +4,6 @@ import com.school.project.model.Student;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
StudentRepository
extends
JpaRepository
<
Student
,
Long
>
{
public
Student
findByStudentId
(
Long
id
);
}
src/main/java/com/school/project/security/OAuth2ServerConfiguration.java
View file @
7ae44194
...
...
@@ -49,11 +49,11 @@ public class OAuth2ServerConfiguration {
.
and
()
.
authorizeRequests
()
.
antMatchers
(
"/register/**"
).
permitAll
()
.
antMatchers
(
"/department/**"
,
"/course/**"
,
"/student/"
).
hasAuthority
(
"ADMIN"
);
.
antMatchers
(
"/student/**"
).
hasAuthority
(
"STUDENT"
)
.
antMatchers
(
"/department/**"
,
"/course/**"
).
hasAuthority
(
"ADMIN"
);
}
}
@Configuration
@EnableAuthorizationServer
protected
static
class
AuthorizationServerConfig
extends
AuthorizationServerConfigurerAdapter
{
...
...
src/main/java/com/school/project/service/course/CourseService.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
course
;
import
com.school.project.dto.CourseDTO
;
import
java.util.List
;
import
com.school.project.dto.course.CourseRegisterDTO
;
public
interface
CourseService
{
public
String
saveCourse
(
CourseDTO
courseDTO
);
public
String
saveCourse
(
Course
Register
DTO
courseDTO
);
public
List
<
CourseDTO
>
readAllCourse
();
public
CourseDTO
readCourseById
(
Long
id
);
public
CourseDTO
updateCourseById
(
CourseDTO
courseDTO
,
Long
id
);
public
void
deleteCourseById
(
Long
id
);
}
src/main/java/com/school/project/service/course/CourseServiceImp.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
course
;
import
com.school.project.dto.
Course
DTO
;
import
com.school.project.dto.
course.CourseRegister
DTO
;
import
com.school.project.model.Course
;
import
com.school.project.repository.modelRepositery.CourseRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
javax.transaction.Transactional
;
import
java.util.List
;
@Service
public
class
CourseServiceImp
implements
CourseService
{
...
...
@@ -16,7 +13,7 @@ public class CourseServiceImp implements CourseService {
public
CourseRepository
courseRepository
;
@Override
public
String
saveCourse
(
CourseDTO
courseDTO
)
{
public
String
saveCourse
(
Course
Register
DTO
courseDTO
)
{
Course
newCourse
=
new
Course
();
newCourse
.
setCourseCode
(
courseDTO
.
getCourseCode
());
...
...
@@ -27,26 +24,6 @@ public class CourseServiceImp implements CourseService {
return
"Course Saved"
;
}
@Override
public
List
<
CourseDTO
>
readAllCourse
()
{
return
null
;
}
@Override
public
CourseDTO
readCourseById
(
Long
id
)
{
return
null
;
}
@Override
public
CourseDTO
updateCourseById
(
CourseDTO
courseDTO
,
Long
id
)
{
return
null
;
}
@Override
public
void
deleteCourseById
(
Long
id
)
{
}
/* @Transactional
@Override
public List<CourseDTO> readAllCourse() {
...
...
src/main/java/com/school/project/service/courseRegistration/CourseRegistrationService.java
0 → 100644
View file @
7ae44194
package
com
.
school
.
project
.
service
.
courseRegistration
;
import
com.school.project.dto.student.StudentCourseRegistrationDTO
;
import
org.springframework.stereotype.Service
;
import
java.util.Set
;
@Service
public
interface
CourseRegistrationService
{
public
void
courseRegistration
(
Long
id
,
Set
<
StudentCourseRegistrationDTO
>
courses
);
}
src/main/java/com/school/project/service/courseRegistration/CourseRegistrationServiceImpl.java
0 → 100644
View file @
7ae44194
package
com
.
school
.
project
.
service
.
courseRegistration
;
import
com.school.project.dto.student.StudentCourseRegistrationDTO
;
import
com.school.project.model.Course
;
import
com.school.project.model.Student
;
import
com.school.project.repository.modelRepositery.CourseRepository
;
import
com.school.project.repository.modelRepositery.StudentRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.jpa.repository.Modifying
;
import
org.springframework.stereotype.Service
;
import
javax.transaction.Transactional
;
import
java.util.List
;
import
java.util.Set
;
@Service
public
class
CourseRegistrationServiceImpl
implements
CourseRegistrationService
{
@Autowired
private
StudentRepository
studentRepository
;
@Autowired
private
CourseRepository
courseRepository
;
@Override
@Transactional
@Modifying
public
void
courseRegistration
(
Long
id
,
Set
<
StudentCourseRegistrationDTO
>
courses
)
{
Student
student
=
studentRepository
.
findByStudentId
(
id
);
Set
<
Course
>
studentCourses
=
student
.
getCourseLists
();
courses
.
forEach
(
course
->
studentCourses
.
add
(
courseRepository
.
findByCourseName
(
course
.
getCourseName
())));
student
.
setCourseLists
(
studentCourses
);
studentRepository
.
save
(
student
);
}
}
src/main/java/com/school/project/service/department/DepartmentService.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
department
;
import
com.school.project.dto.DepartmentDTO
;
import
java.util.List
;
import
com.school.project.dto.department.DepartmentRegisterDTO
;
public
interface
DepartmentService
{
public
String
saveDepartment
(
DepartmentDTO
departmentDTO
);
public
List
<
DepartmentDTO
>
readDepartment
();
public
DepartmentDTO
readDepartmentById
(
Long
id
);
public
DepartmentDTO
updateDepartment
(
DepartmentDTO
departmentDTO
,
Long
id
);
public
void
deleteDepartmentById
(
Long
id
);
public
DepartmentDTO
findDepartmentByName
(
String
departmentName
);
public
String
saveDepartment
(
DepartmentRegisterDTO
departmentDTO
);
}
src/main/java/com/school/project/service/department/DepartmentServiceImp.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
department
;
import
com.school.project.dto.
Department
DTO
;
import
com.school.project.dto.
department.DepartmentRegister
DTO
;
import
com.school.project.model.Department
;
import
com.school.project.repository.modelRepositery.DepartmentRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
@Service
public
class
DepartmentServiceImp
implements
DepartmentService
{
@Autowired
(
required
=
true
)
private
DepartmentRepository
departmentRepository
;
@Override
public
String
saveDepartment
(
DepartmentDTO
department
)
{
public
String
saveDepartment
(
Department
Register
DTO
department
)
{
Department
newDepartment
=
new
Department
();
...
...
@@ -25,45 +23,20 @@ public class DepartmentServiceImp implements DepartmentService {
return
"Department Saved"
;
}
@Override
public
List
<
DepartmentDTO
>
readDepartment
()
{
return
null
;
}
@Override
public
DepartmentDTO
readDepartmentById
(
Long
id
)
{
return
null
;
}
@Override
public
DepartmentDTO
updateDepartment
(
DepartmentDTO
departmentDTO
,
Long
id
)
{
return
null
;
}
@Override
public
void
deleteDepartmentById
(
Long
id
)
{
}
@Override
public
DepartmentDTO
findDepartmentByName
(
String
departmentName
)
{
return
null
;
}
/* @Override
public List<DepartmentDTO> readDepartment() {
public List<Department
Register
DTO> readDepartment() {
return departmentMapper.departmentListModelToDTO(departmentRepository.findAll());
}
@Override
public DepartmentDTO readDepartmentById(Long departmentId) {
public Department
Register
DTO readDepartmentById(Long departmentId) {
return departmentMapper.departmentModelToDTO(departmentRepository.findById(departmentId).get());
}
@Override
public Department
DTO updateDepartment(Department
DTO departmentDTO, Long departmentId) {
DepartmentDTO dto = readDepartmentById(departmentId);
public Department
RegisterDTO updateDepartment(DepartmentRegister
DTO departmentDTO, Long departmentId) {
Department
Register
DTO dto = readDepartmentById(departmentId);
dto.setName(departmentDTO.getName());
...
...
@@ -78,7 +51,7 @@ public class DepartmentServiceImp implements DepartmentService {
}
@Override
public DepartmentDTO findDepartmentByName(String departmentName) {
public Department
Register
DTO findDepartmentByName(String departmentName) {
return departmentMapper.departmentModelToDTO(departmentRepository.findByName(departmentName));
}
...
...
src/main/java/com/school/project/service/student/StudentService.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
student
;
import
com.school.project.model.Student
;
import
com.school.project.dto.student.StudentCoursesDTO
;
import
com.school.project.dto.student.StudentViewDataDTO
;
public
interface
StudentService
{
public
Student
viewData
(
String
username
);
public
Student
viewData
(
Long
id
);
public
StudentViewDataDTO
viewData
(
String
username
);
public
void
courseRegistration
();
public
Long
getUserId
(
String
username
);
public
StudentCoursesDTO
viewCourses
(
Long
id
);
}
src/main/java/com/school/project/service/student/StudentServiceImpl.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
student
;
import
com.school.project.model.Student
;
import
com.school.project.model.Teacher
;
import
com.school.project.repository.modelRepositery.TeacherRepository
;
import
com.school.project.dto.student.StudentCoursesDTO
;
import
com.school.project.dto.student.StudentViewDataDTO
;
import
com.school.project.mapper.StudentCoursesMapper
;
import
com.school.project.mapper.StudentViewDataMapper
;
import
com.school.project.model.userRegistration.User
;
import
com.school.project.repository.modelRepositery.StudentRepository
;
import
com.school.project.repository.userRegistration.UserRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.Optional
;
@Service
public
class
StudentServiceImpl
implements
StudentService
{
public
class
StudentServiceImpl
implements
StudentService
{
@Autowired
private
TeacherRepository
teacher
Repository
;
private
StudentRepository
student
Repository
;
@Autowired
private
UserRepository
userRepository
;
@Autowired
private
StudentViewDataMapper
studentViewDataMapper
;
@Autowired
private
StudentCoursesMapper
studentCoursesMapper
;
@Override
public
Student
viewData
(
String
username
)
{
return
null
;
public
Long
getUserId
(
String
username
)
{
User
user
=
userRepository
.
findUserByEmail
(
username
).
get
();
return
user
.
getUserId
();
}
@Override
public
Student
viewData
(
/*String username*/
Long
id
)
{
public
Student
ViewDataDTO
viewData
(
String
username
)
{
Teacher
teacher
=
teacherRepository
.
findOneByTeacherId
(
id
);
User
user
=
userRepository
.
findUserByEmail
(
username
).
get
();
StudentViewDataDTO
student
=
studentViewDataMapper
.
modelToDto
(
studentRepository
.
findByStudentId
(
user
.
getUserId
()));
return
null
;
return
student
;
}
@Override
public
void
courseRegistration
(
)
{
public
StudentCoursesDTO
viewCourses
(
Long
id
)
{
return
studentCoursesMapper
.
modelToDto
(
studentRepository
.
findByStudentId
(
id
));
}
}
src/main/java/com/school/project/service/userRegistration/admin/AdminRegistrationService.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
userRegistration
.
admin
;
import
com.school.project.dto.userRegistration.AdminRegistrationDTO
;
import
com.school.project.dto.userRegistration.UserDTO
;
import
com.school.project.dto.userRegistration.User
Registration
DTO
;
import
org.springframework.stereotype.Service
;
@Service
public
interface
AdminRegistrationService
{
public
UserDTO
registerAdmin
(
AdminRegistrationDTO
admin
);
public
User
Registration
DTO
registerAdmin
(
AdminRegistrationDTO
admin
);
}
src/main/java/com/school/project/service/userRegistration/admin/AdminRegistrationServiceImpl.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
userRegistration
.
admin
;
import
com.school.project.dto.userRegistration.AdminRegistrationDTO
;
import
com.school.project.dto.userRegistration.UserDTO
;
import
com.school.project.dto.userRegistration.User
Registration
DTO
;
import
com.school.project.model.userRegistration.Admin
;
import
com.school.project.model.userRegistration.Role
;
import
com.school.project.model.userRegistration.User
;
...
...
@@ -27,7 +27,7 @@ public class AdminRegistrationServiceImpl implements AdminRegistrationService {
@Autowired
private
PasswordEncoder
passwordEncoder
;
public
UserDTO
registerAdmin
(
AdminRegistrationDTO
admin
)
{
public
User
Registration
DTO
registerAdmin
(
AdminRegistrationDTO
admin
)
{
User
newUser
=
new
User
();
...
...
@@ -41,7 +41,9 @@ public class AdminRegistrationServiceImpl implements AdminRegistrationService {
newAdmin
.
setName
(
admin
.
getName
());
newAdmin
.
setAdminAppUser
(
newUser
);
return
new
UserDTO
(
newUser
.
getUserId
(),
newUser
.
getEmail
());
adminRegRepository
.
save
(
newAdmin
);
return
new
UserRegistrationDTO
(
newUser
.
getUserId
(),
newUser
.
getEmail
());
}
...
...
src/main/java/com/school/project/service/userRegistration/student/StudentRegistrationService.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
userRegistration
.
student
;
import
com.school.project.dto.userRegistration.StudentRegistrationDTO
;
import
com.school.project.dto.userRegistration.UserDTO
;
import
com.school.project.dto.userRegistration.User
Registration
DTO
;
public
interface
StudentRegistrationService
{
public
UserDTO
registerStudent
(
StudentRegistrationDTO
studentRegistrationDTO
);
public
User
Registration
DTO
registerStudent
(
StudentRegistrationDTO
studentRegistrationDTO
);
}
src/main/java/com/school/project/service/userRegistration/student/StudentRegistrationServiceImpl.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
userRegistration
.
student
;
import
com.school.project.dto.userRegistration.StudentRegistrationDTO
;
import
com.school.project.dto.userRegistration.UserDTO
;
import
com.school.project.dto.userRegistration.User
Registration
DTO
;
import
com.school.project.model.userRegistration.Role
;
import
com.school.project.model.Student
;
import
com.school.project.model.userRegistration.User
;
...
...
@@ -31,9 +31,8 @@ public class StudentRegistrationServiceImpl implements StudentRegistrationServic
@Override
@Transactional
public
UserDTO
registerStudent
(
StudentRegistrationDTO
studentRegistrationDTO
)
{
public
User
Registration
DTO
registerStudent
(
StudentRegistrationDTO
studentRegistrationDTO
)
{
//Creating New User
User
newUser
=
new
User
();
newUser
.
setEmail
(
studentRegistrationDTO
.
getEmail
());
...
...
@@ -42,7 +41,6 @@ public class StudentRegistrationServiceImpl implements StudentRegistrationServic
newUser
=
userRepository
.
save
(
newUser
);
//Creating New Student
Student
newStudent
=
new
Student
();
newStudent
.
setName
(
studentRegistrationDTO
.
getName
());
...
...
@@ -52,7 +50,7 @@ public class StudentRegistrationServiceImpl implements StudentRegistrationServic
studentRepository
.
save
(
newStudent
);
return
new
UserDTO
(
newUser
.
getUserId
(),
newUser
.
getEmail
());
return
new
User
Registration
DTO
(
newUser
.
getUserId
(),
newUser
.
getEmail
());
}
}
src/main/java/com/school/project/service/userRegistration/teacher/TeacherRegistrationService.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
userRegistration
.
teacher
;
import
com.school.project.dto.userRegistration.TeacherRegistrationDTO
;
import
com.school.project.dto.userRegistration.UserDTO
;
import
com.school.project.dto.userRegistration.User
Registration
DTO
;
public
interface
TeacherRegistrationService
{
public
UserDTO
registerTeacher
(
TeacherRegistrationDTO
teacherRegistrationDTO
);
public
User
Registration
DTO
registerTeacher
(
TeacherRegistrationDTO
teacherRegistrationDTO
);
}
src/main/java/com/school/project/service/userRegistration/teacher/TeacherRegistrationServiceImpl.java
View file @
7ae44194
package
com
.
school
.
project
.
service
.
userRegistration
.
teacher
;
import
com.school.project.dto.userRegistration.TeacherRegistrationDTO
;
import
com.school.project.dto.userRegistration.UserDTO
;
import
com.school.project.dto.userRegistration.User
Registration
DTO
;
import
com.school.project.model.userRegistration.Role
;
import
com.school.project.model.Teacher
;
import
com.school.project.model.userRegistration.User
;
...
...
@@ -31,7 +31,7 @@ public class TeacherRegistrationServiceImpl implements TeacherRegistrationServic
@Override
@Transactional
public
UserDTO
registerTeacher
(
TeacherRegistrationDTO
teacherRegistrationDTO
)
{
public
User
Registration
DTO
registerTeacher
(
TeacherRegistrationDTO
teacherRegistrationDTO
)
{
User
newUser
=
new
User
();
...
...
@@ -50,7 +50,7 @@ public class TeacherRegistrationServiceImpl implements TeacherRegistrationServic
teacherRepository
.
save
(
newTeacher
);
return
new
UserDTO
(
newTeacher
.
getTeacherId
(),
newUser
.
getEmail
());
return
new
User
Registration
DTO
(
newTeacher
.
getTeacherId
(),
newUser
.
getEmail
());
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment