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
1577d277
Commit
1577d277
authored
Jul 04, 2022
by
Muhammad Suleman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added Student Registration
parent
fc4efb2b
Changes
40
Show whitespace changes
Inline
Side-by-side
Showing
40 changed files
with
95 additions
and
323 deletions
+95
-323
StudentController.java
...java/com/school/project/controller/StudentController.java
+0
-77
CourseController.java
...com/school/project/controller/other/CourseController.java
+2
-2
DepartmentController.java
...school/project/controller/other/DepartmentController.java
+2
-2
TeacherController.java
...om/school/project/controller/other/TeacherController.java
+2
-2
RegistrationController.java
...oject/controller/registration/RegistrationController.java
+13
-3
StudentDTO.java
src/main/java/com/school/project/dto/StudentDTO.java
+0
-19
CourseDTO.java
src/main/java/com/school/project/dto/modelDTO/CourseDTO.java
+3
-3
DepartmentDTO.java
...n/java/com/school/project/dto/modelDTO/DepartmentDTO.java
+1
-1
TeacherDTO.java
...main/java/com/school/project/dto/modelDTO/TeacherDTO.java
+1
-1
StudentRegistrationDTO.java
...l/project/dto/registrationDTO/StudentRegistrationDTO.java
+1
-1
UserDTO.java
.../java/com/school/project/dto/registrationDTO/UserDTO.java
+1
-1
CourseMapper.java
src/main/java/com/school/project/mapper/CourseMapper.java
+1
-1
DepartmentMapper.java
...main/java/com/school/project/mapper/DepartmentMapper.java
+1
-1
StudentMapper.java
src/main/java/com/school/project/mapper/StudentMapper.java
+0
-20
TeacherMapper.java
src/main/java/com/school/project/mapper/TeacherMapper.java
+1
-1
Role.java
...main/java/com/school/project/model/registration/Role.java
+7
-1
Student.java
...n/java/com/school/project/model/registration/Student.java
+16
-4
StudentReg.java
...ava/com/school/project/model/registration/StudentReg.java
+0
-47
User.java
...main/java/com/school/project/model/registration/User.java
+2
-2
Course.java
src/main/java/com/school/project/model/school/Course.java
+2
-2
StudentRepository.java
...java/com/school/project/repository/StudentRepository.java
+0
-10
CourseRepository.java
.../project/repository/modelRepositery/CourseRepository.java
+1
-1
DepartmentRepository.java
...ject/repository/modelRepositery/DepartmentRepository.java
+1
-1
TeacherRepository.java
...project/repository/modelRepositery/TeacherRepository.java
+1
-1
RoleRepository.java
...ect/repository/registrationRepositery/RoleRepository.java
+1
-1
StudentRegRepository.java
...pository/registrationRepositery/StudentRegRepository.java
+3
-3
UserRepository.java
...ect/repository/registrationRepositery/UserRepository.java
+1
-1
CourseService.java
...java/com/school/project/service/course/CourseService.java
+1
-1
CourseServiceImp.java
...a/com/school/project/service/course/CourseServiceImp.java
+2
-2
DepartmentService.java
.../school/project/service/department/DepartmentService.java
+1
-1
DepartmentServiceImp.java
...hool/project/service/department/DepartmentServiceImp.java
+2
-2
StudentService.java
...va/com/school/project/service/student/StudentService.java
+0
-20
StudentServiceImp.java
...com/school/project/service/student/StudentServiceImp.java
+0
-59
TeacherService.java
...va/com/school/project/service/teacher/TeacherService.java
+1
-1
TeacherServiceImp.java
...com/school/project/service/teacher/TeacherServiceImp.java
+2
-2
StudentRegistrationService.java
.../service/userRegistration/StudentRegistrationService.java
+2
-2
StudentRegistrationServiceImpl.java
...vice/userRegistration/StudentRegistrationServiceImpl.java
+16
-13
UserServiceImpl.java
...ool/project/service/userRegistration/UserServiceImpl.java
+0
-10
application.properties
src/main/resources/application.properties
+1
-1
data.sql
src/main/resources/data.sql
+3
-0
No files found.
src/main/java/com/school/project/controller/StudentController.java
deleted
100644 → 0
View file @
fc4efb2b
package
com
.
school
.
project
.
controller
;
import
com.school.project.dto.StudentDTO
;
import
com.school.project.service.student.StudentServiceImp
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.dao.EmptyResultDataAccessException
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
import
java.util.NoSuchElementException
;
@RestController
@RequestMapping
(
"/student"
)
public
class
StudentController
{
@Autowired
(
required
=
true
)
public
StudentServiceImp
studentServiceImp
;
@PostMapping
(
"/save"
)
public
ResponseEntity
<
StudentDTO
>
saveStudent
(
@RequestBody
StudentDTO
studentDTO
)
{
StudentDTO
student
=
studentServiceImp
.
saveStudent
(
studentDTO
);
if
(
student
==
null
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
UNPROCESSABLE_ENTITY
).
build
();
}
else
{
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
student
);
}
}
@GetMapping
(
"/findAll"
)
public
ResponseEntity
<
List
<
StudentDTO
>>
readAllStudents
()
{
List
<
StudentDTO
>
studentsDTO
=
studentServiceImp
.
readAllStudents
();
if
(
studentsDTO
.
size
()
<=
0
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
NOT_FOUND
).
build
();
}
else
{
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
studentsDTO
);
}
}
@GetMapping
(
"/find/{id}"
)
public
ResponseEntity
<
StudentDTO
>
readStudentById
(
@PathVariable
(
"id"
)
Long
id
)
{
try
{
StudentDTO
dto
=
studentServiceImp
.
readStudentById
(
id
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
dto
);
}
catch
(
NoSuchElementException
e
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
NOT_FOUND
).
build
();
}
}
@PutMapping
(
"/update/{id}"
)
public
ResponseEntity
<
StudentDTO
>
updateStudentById
(
@RequestBody
StudentDTO
studentDTO
,
@PathVariable
(
"id"
)
Long
id
)
{
try
{
StudentDTO
updateStudent
=
studentServiceImp
.
updateStudentById
(
studentDTO
,
id
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
updateStudent
);
}
catch
(
NoSuchElementException
e
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
UNPROCESSABLE_ENTITY
).
build
();
}
}
@DeleteMapping
(
"/delete/{id}"
)
public
ResponseEntity
deleteStudentById
(
@PathVariable
(
"id"
)
Long
id
)
{
try
{
studentServiceImp
.
deleteStudentById
(
id
);
return
ResponseEntity
.
status
(
HttpStatus
.
NO_CONTENT
).
build
();
}
catch
(
EmptyResultDataAccessException
e
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
UNPROCESSABLE_ENTITY
).
build
();
}
}
}
\ No newline at end of file
src/main/java/com/school/project/controller/CourseController.java
→
src/main/java/com/school/project/controller/
other/
CourseController.java
View file @
1577d277
package
com
.
school
.
project
.
controller
;
package
com
.
school
.
project
.
controller
.
other
;
import
com.school.project.dto.CourseDTO
;
import
com.school.project.dto.
modelDTO.
CourseDTO
;
import
com.school.project.service.course.CourseServiceImp
;
import
com.school.project.service.course.CourseServiceImp
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.dao.EmptyResultDataAccessException
;
import
org.springframework.dao.EmptyResultDataAccessException
;
...
...
src/main/java/com/school/project/controller/DepartmentController.java
→
src/main/java/com/school/project/controller/
other/
DepartmentController.java
View file @
1577d277
package
com
.
school
.
project
.
controller
;
package
com
.
school
.
project
.
controller
.
other
;
import
com.school.project.dto.DepartmentDTO
;
import
com.school.project.dto.
modelDTO.
DepartmentDTO
;
import
com.school.project.service.department.DepartmentServiceImp
;
import
com.school.project.service.department.DepartmentServiceImp
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.dao.EmptyResultDataAccessException
;
import
org.springframework.dao.EmptyResultDataAccessException
;
...
...
src/main/java/com/school/project/controller/TeacherController.java
→
src/main/java/com/school/project/controller/
other/
TeacherController.java
View file @
1577d277
package
com
.
school
.
project
.
controller
;
package
com
.
school
.
project
.
controller
.
other
;
import
com.school.project.dto.TeacherDTO
;
import
com.school.project.dto.
modelDTO.
TeacherDTO
;
import
com.school.project.service.teacher.TeacherServiceImp
;
import
com.school.project.service.teacher.TeacherServiceImp
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.ComponentScan
;
import
org.springframework.context.annotation.ComponentScan
;
...
...
src/main/java/com/school/project/controller/registration/
Student
RegistrationController.java
→
src/main/java/com/school/project/controller/registration/RegistrationController.java
View file @
1577d277
package
com
.
school
.
project
.
controller
.
registration
;
package
com
.
school
.
project
.
controller
.
registration
;
import
com.school.project.dto.StudentRegistrationDTO
;
import
com.school.project.dto.
registrationDTO.
StudentRegistrationDTO
;
import
com.school.project.dto.UserDTO
;
import
com.school.project.dto.
registrationDTO.
UserDTO
;
import
com.school.project.service.userRegistration.StudentRegistrationService
;
import
com.school.project.service.userRegistration.StudentRegistrationService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.server.ResponseStatusException
;
import
javax.management.relation.RelationServiceNotRegisteredException
;
@RestController
@RestController
@RequestMapping
(
"/register"
)
@RequestMapping
(
"/register"
)
public
class
Student
RegistrationController
{
public
class
RegistrationController
{
@Autowired
@Autowired
private
StudentRegistrationService
studentRegistrationService
;
private
StudentRegistrationService
studentRegistrationService
;
@PostMapping
(
"/student"
)
@PostMapping
(
"/student"
)
public
ResponseEntity
<
UserDTO
>
registerStudent
(
@RequestBody
StudentRegistrationDTO
student
)
{
public
ResponseEntity
<
UserDTO
>
registerStudent
(
@RequestBody
StudentRegistrationDTO
student
)
{
try
{
}
catch
(
Exception
e
)
{
throw
new
ResponseStatusException
(
HttpStatus
.
BAD_REQUEST
,
"Data is not correct"
,
e
);
}
UserDTO
userDTO
=
studentRegistrationService
.
registerStudent
(
student
);
UserDTO
userDTO
=
studentRegistrationService
.
registerStudent
(
student
);
return
ResponseEntity
.
ok
(
userDTO
);
return
ResponseEntity
.
ok
(
userDTO
);
...
...
src/main/java/com/school/project/dto/StudentDTO.java
deleted
100644 → 0
View file @
fc4efb2b
package
com
.
school
.
project
.
dto
;
import
com.school.project.model.school.Course
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
StudentDTO
{
private
Long
id
;
private
String
name
;
private
Long
age
;
private
List
<
Course
>
courseLists
;
}
src/main/java/com/school/project/dto/CourseDTO.java
→
src/main/java/com/school/project/dto/
modelDTO/
CourseDTO.java
View file @
1577d277
package
com
.
school
.
project
.
dto
;
package
com
.
school
.
project
.
dto
.
modelDTO
;
import
com.school.project.model.registration.Student
Reg
;
import
com.school.project.model.registration.Student
;
import
com.school.project.model.registration.Teacher
;
import
com.school.project.model.registration.Teacher
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -13,7 +13,7 @@ public class CourseDTO {
...
@@ -13,7 +13,7 @@ public class CourseDTO {
private
String
title
;
private
String
title
;
List
<
Student
Reg
>
studentList
;
List
<
Student
>
studentList
;
private
List
<
Teacher
>
teacherList
;
private
List
<
Teacher
>
teacherList
;
...
...
src/main/java/com/school/project/dto/DepartmentDTO.java
→
src/main/java/com/school/project/dto/
modelDTO/
DepartmentDTO.java
View file @
1577d277
package
com
.
school
.
project
.
dto
;
package
com
.
school
.
project
.
dto
.
modelDTO
;
import
lombok.Data
;
import
lombok.Data
;
...
...
src/main/java/com/school/project/dto/TeacherDTO.java
→
src/main/java/com/school/project/dto/
modelDTO/
TeacherDTO.java
View file @
1577d277
package
com
.
school
.
project
.
dto
;
package
com
.
school
.
project
.
dto
.
modelDTO
;
import
com.school.project.model.school.Course
;
import
com.school.project.model.school.Course
;
import
com.school.project.model.school.Department
;
import
com.school.project.model.school.Department
;
...
...
src/main/java/com/school/project/dto/StudentRegistrationDTO.java
→
src/main/java/com/school/project/dto/
registrationDTO/
StudentRegistrationDTO.java
View file @
1577d277
package
com
.
school
.
project
.
dto
;
package
com
.
school
.
project
.
dto
.
registrationDTO
;
import
com.fasterxml.jackson.databind.annotation.JsonDeserialize
;
import
com.fasterxml.jackson.databind.annotation.JsonDeserialize
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
...
...
src/main/java/com/school/project/dto/UserDTO.java
→
src/main/java/com/school/project/dto/
registrationDTO/
UserDTO.java
View file @
1577d277
package
com
.
school
.
project
.
dto
;
package
com
.
school
.
project
.
dto
.
registrationDTO
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
...
...
src/main/java/com/school/project/mapper/CourseMapper.java
View file @
1577d277
package
com
.
school
.
project
.
mapper
;
package
com
.
school
.
project
.
mapper
;
import
com.school.project.dto.CourseDTO
;
import
com.school.project.dto.
modelDTO.
CourseDTO
;
import
com.school.project.model.school.Course
;
import
com.school.project.model.school.Course
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.factory.Mappers
;
import
org.mapstruct.factory.Mappers
;
...
...
src/main/java/com/school/project/mapper/DepartmentMapper.java
View file @
1577d277
package
com
.
school
.
project
.
mapper
;
package
com
.
school
.
project
.
mapper
;
import
com.school.project.dto.DepartmentDTO
;
import
com.school.project.dto.
modelDTO.
DepartmentDTO
;
import
com.school.project.model.school.Department
;
import
com.school.project.model.school.Department
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.factory.Mappers
;
import
org.mapstruct.factory.Mappers
;
...
...
src/main/java/com/school/project/mapper/StudentMapper.java
deleted
100644 → 0
View file @
fc4efb2b
package
com
.
school
.
project
.
mapper
;
import
com.school.project.dto.StudentDTO
;
import
com.school.project.model.registration.Student
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.factory.Mappers
;
import
java.util.List
;
@Mapper
(
componentModel
=
"spring"
)
public
interface
StudentMapper
{
StudentMapper
INSTANCE
=
Mappers
.
getMapper
(
StudentMapper
.
class
);
StudentDTO
studentModelToDTO
(
Student
student
);
Student
studentDTOToModel
(
StudentDTO
studentDTO
);
List
<
StudentDTO
>
studentModelToDTO
(
List
<
Student
>
all
);
}
src/main/java/com/school/project/mapper/TeacherMapper.java
View file @
1577d277
package
com
.
school
.
project
.
mapper
;
package
com
.
school
.
project
.
mapper
;
import
com.school.project.dto.TeacherDTO
;
import
com.school.project.dto.
modelDTO.
TeacherDTO
;
import
com.school.project.model.registration.Teacher
;
import
com.school.project.model.registration.Teacher
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.factory.Mappers
;
import
org.mapstruct.factory.Mappers
;
...
...
src/main/java/com/school/project/model/registration/Role.java
View file @
1577d277
package
com
.
school
.
project
.
model
.
registration
;
package
com
.
school
.
project
.
model
.
registration
;
import
com.sun.istack.NotNull
;
import
com.sun.istack.NotNull
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
javax.persistence.*
;
import
javax.persistence.*
;
@Data
@Data
@Entity
@Entity
@Table
(
name
=
"Role"
)
@NoArgsConstructor
@AllArgsConstructor
@RequiredArgsConstructor
@Table
(
name
=
"role"
)
public
class
Role
{
public
class
Role
{
public
static
enum
ROLES
{
public
static
enum
ROLES
{
...
...
src/main/java/com/school/project/model/registration/Student.java
View file @
1577d277
package
com
.
school
.
project
.
model
.
registration
;
package
com
.
school
.
project
.
model
.
registration
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.school.Course
;
import
com.school.project.model.school.Course
;
import
com.sun.istack.NotNull
;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.persistence.*
;
import
javax.persistence.*
;
import
java.util.List
;
import
java.util.List
;
@Data
@Data
@Entity
()
@Entity
()
@NoArgsConstructor
@Table
(
name
=
"Student"
)
@Table
(
name
=
"Student"
)
public
class
Student
{
public
class
Student
{
@Id
@Id
@Column
(
name
=
"
id"
,
nullable
=
false
)
@Column
(
name
=
"
student_id"
)
@GeneratedValue
(
strategy
=
GenerationType
.
SEQUENCE
)
@GeneratedValue
(
strategy
=
GenerationType
.
SEQUENCE
)
private
Long
id
;
private
Long
studentId
;
@NotNull
@Column
(
name
=
"roll_no"
,
unique
=
true
)
private
String
rollNumber
;
@NotNull
@Column
(
name
=
"name"
)
@Column
(
name
=
"name"
)
private
String
name
;
private
String
name
;
@NotNull
@Column
(
name
=
"age"
)
@Column
(
name
=
"age"
)
private
Long
age
;
private
Long
age
;
@JsonIgnore
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
cascade
=
{
CascadeType
.
MERGE
})
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
cascade
=
{
CascadeType
.
MERGE
})
@JoinTable
(
@JoinTable
(
name
=
"studentsCourses"
,
name
=
"studentsCourses"
,
joinColumns
=
{
@JoinColumn
(
name
=
"student_id"
)},
joinColumns
=
{
@JoinColumn
(
name
=
"student_id"
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"course_id"
)}
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"course_id"
)}
)
)
@JsonIgnore
private
List
<
Course
>
courseLists
;
private
List
<
Course
>
courseLists
;
@OneToOne
@MapsId
@JoinColumn
(
name
=
"student_id"
)
private
User
studentAppUser
;
}
}
src/main/java/com/school/project/model/registration/StudentReg.java
deleted
100644 → 0
View file @
fc4efb2b
package
com
.
school
.
project
.
model
.
registration
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.school.Course
;
import
com.sun.istack.NotNull
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.persistence.*
;
import
java.util.List
;
@Data
@Entity
()
@NoArgsConstructor
@Table
(
name
=
"StudentReg"
)
public
class
StudentReg
{
@Id
@Column
(
name
=
"student_id"
)
@GeneratedValue
(
strategy
=
GenerationType
.
SEQUENCE
)
private
Long
studentId
;
@Column
(
name
=
"roll_no"
,
unique
=
true
)
private
String
rollNumber
;
@NotNull
@Column
(
name
=
"name"
)
private
String
name
;
@NotNull
@Column
(
name
=
"age"
)
private
Long
age
;
@JsonIgnore
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
cascade
=
{
CascadeType
.
MERGE
})
@JoinTable
(
name
=
"studentsCourses"
,
joinColumns
=
{
@JoinColumn
(
name
=
"student_id"
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"course_id"
)}
)
private
List
<
Course
>
courseLists
;
@OneToOne
@MapsId
@JoinColumn
(
name
=
"student_id"
)
private
User
studentAppUser
;
}
src/main/java/com/school/project/model/registration/User.java
View file @
1577d277
...
@@ -14,7 +14,7 @@ import javax.persistence.*;
...
@@ -14,7 +14,7 @@ import javax.persistence.*;
public
class
User
{
public
class
User
{
@Id
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
AUTO
)
@GeneratedValue
(
strategy
=
GenerationType
.
SEQUENCE
)
@Column
(
name
=
"user_id"
)
@Column
(
name
=
"user_id"
)
private
Long
userId
;
private
Long
userId
;
...
@@ -33,7 +33,7 @@ public class User {
...
@@ -33,7 +33,7 @@ public class User {
@OneToOne
(
mappedBy
=
"studentAppUser"
,
cascade
=
{
CascadeType
.
MERGE
})
@OneToOne
(
mappedBy
=
"studentAppUser"
,
cascade
=
{
CascadeType
.
MERGE
})
@PrimaryKeyJoinColumn
@PrimaryKeyJoinColumn
private
Student
Reg
studentUser
;
private
Student
studentUser
;
// @ElementCollection(fetch = FetchType.EAGER)
// @ElementCollection(fetch = FetchType.EAGER)
// @CollectionTable(
// @CollectionTable(
...
...
src/main/java/com/school/project/model/school/Course.java
View file @
1577d277
package
com
.
school
.
project
.
model
.
school
;
package
com
.
school
.
project
.
model
.
school
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.registration.Student
Reg
;
import
com.school.project.model.registration.Student
;
import
com.school.project.model.registration.Teacher
;
import
com.school.project.model.registration.Teacher
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -24,7 +24,7 @@ public class Course {
...
@@ -24,7 +24,7 @@ public class Course {
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseLists"
)
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseLists"
)
@JsonIgnore
@JsonIgnore
private
List
<
Student
Reg
>
studentList
;
private
List
<
Student
>
studentList
;
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseList"
)
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseList"
)
@JsonIgnore
@JsonIgnore
...
...
src/main/java/com/school/project/repository/StudentRepository.java
deleted
100644 → 0
View file @
fc4efb2b
package
com
.
school
.
project
.
repository
;
import
com.school.project.model.registration.Student
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.stereotype.Repository
;
@Repository
public
interface
StudentRepository
extends
JpaRepository
<
Student
,
Long
>
{
}
src/main/java/com/school/project/repository/CourseRepository.java
→
src/main/java/com/school/project/repository/
modelRepositery/
CourseRepository.java
View file @
1577d277
package
com
.
school
.
project
.
repository
;
package
com
.
school
.
project
.
repository
.
modelRepositery
;
import
com.school.project.model.school.Course
;
import
com.school.project.model.school.Course
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
...
...
src/main/java/com/school/project/repository/DepartmentRepository.java
→
src/main/java/com/school/project/repository/
modelRepositery/
DepartmentRepository.java
View file @
1577d277
package
com
.
school
.
project
.
repository
;
package
com
.
school
.
project
.
repository
.
modelRepositery
;
import
com.school.project.model.school.Department
;
import
com.school.project.model.school.Department
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
...
...
src/main/java/com/school/project/repository/TeacherRepository.java
→
src/main/java/com/school/project/repository/
modelRepositery/
TeacherRepository.java
View file @
1577d277
package
com
.
school
.
project
.
repository
;
package
com
.
school
.
project
.
repository
.
modelRepositery
;
import
com.school.project.model.registration.Teacher
;
import
com.school.project.model.registration.Teacher
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
...
...
src/main/java/com/school/project/repository/RoleRepository.java
→
src/main/java/com/school/project/repository/
registrationRepositery/
RoleRepository.java
View file @
1577d277
package
com
.
school
.
project
.
repository
;
package
com
.
school
.
project
.
repository
.
registrationRepositery
;
import
com.school.project.model.registration.Role
;
import
com.school.project.model.registration.Role
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
...
...
src/main/java/com/school/project/repository/StudentRegRepository.java
→
src/main/java/com/school/project/repository/
registrationRepositery/
StudentRegRepository.java
View file @
1577d277
package
com
.
school
.
project
.
repository
;
package
com
.
school
.
project
.
repository
.
registrationRepositery
;
import
com.school.project.model.registration.Student
Reg
;
import
com.school.project.model.registration.Student
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
StudentRegRepository
extends
JpaRepository
<
Student
Reg
,
Long
>
{
public
interface
StudentRegRepository
extends
JpaRepository
<
Student
,
Long
>
{
}
}
src/main/java/com/school/project/repository/UserRepository.java
→
src/main/java/com/school/project/repository/
registrationRepositery/
UserRepository.java
View file @
1577d277
package
com
.
school
.
project
.
repository
;
package
com
.
school
.
project
.
repository
.
registrationRepositery
;
import
com.school.project.model.registration.User
;
import
com.school.project.model.registration.User
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
...
...
src/main/java/com/school/project/service/course/CourseService.java
View file @
1577d277
package
com
.
school
.
project
.
service
.
course
;
package
com
.
school
.
project
.
service
.
course
;
import
com.school.project.dto.CourseDTO
;
import
com.school.project.dto.
modelDTO.
CourseDTO
;
import
java.util.List
;
import
java.util.List
;
...
...
src/main/java/com/school/project/service/course/CourseServiceImp.java
View file @
1577d277
package
com
.
school
.
project
.
service
.
course
;
package
com
.
school
.
project
.
service
.
course
;
import
com.school.project.dto.CourseDTO
;
import
com.school.project.dto.
modelDTO.
CourseDTO
;
import
com.school.project.mapper.CourseMapper
;
import
com.school.project.mapper.CourseMapper
;
import
com.school.project.repository.CourseRepository
;
import
com.school.project.repository.
modelRepositery.
CourseRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
...
src/main/java/com/school/project/service/department/DepartmentService.java
View file @
1577d277
package
com
.
school
.
project
.
service
.
department
;
package
com
.
school
.
project
.
service
.
department
;
import
com.school.project.dto.DepartmentDTO
;
import
com.school.project.dto.
modelDTO.
DepartmentDTO
;
import
java.util.List
;
import
java.util.List
;
...
...
src/main/java/com/school/project/service/department/DepartmentServiceImp.java
View file @
1577d277
package
com
.
school
.
project
.
service
.
department
;
package
com
.
school
.
project
.
service
.
department
;
import
com.school.project.dto.DepartmentDTO
;
import
com.school.project.dto.
modelDTO.
DepartmentDTO
;
import
com.school.project.mapper.DepartmentMapper
;
import
com.school.project.mapper.DepartmentMapper
;
import
com.school.project.repository.DepartmentRepository
;
import
com.school.project.repository.
modelRepositery.
DepartmentRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
...
src/main/java/com/school/project/service/student/StudentService.java
deleted
100644 → 0
View file @
fc4efb2b
package
com
.
school
.
project
.
service
.
student
;
import
com.school.project.dto.StudentDTO
;
import
java.util.List
;
public
interface
StudentService
{
public
StudentDTO
saveStudent
(
StudentDTO
studentDTO
);
public
List
<
StudentDTO
>
readAllStudents
();
public
StudentDTO
readStudentById
(
Long
id
);
public
StudentDTO
updateStudentById
(
StudentDTO
studentDTO
,
Long
id
);
public
void
deleteStudentById
(
Long
id
);
}
src/main/java/com/school/project/service/student/StudentServiceImp.java
deleted
100644 → 0
View file @
fc4efb2b
package
com
.
school
.
project
.
service
.
student
;
import
com.school.project.dto.StudentDTO
;
import
com.school.project.mapper.StudentMapper
;
import
com.school.project.repository.StudentRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
@Service
public
class
StudentServiceImp
implements
StudentService
{
@Autowired
(
required
=
true
)
public
StudentRepository
studentRepository
;
@Autowired
public
StudentMapper
studentMapper
;
@Override
public
StudentDTO
saveStudent
(
StudentDTO
studentDTO
)
{
return
studentMapper
.
studentModelToDTO
(
studentRepository
.
save
(
studentMapper
.
studentDTOToModel
(
studentDTO
)));
}
@Override
public
List
<
StudentDTO
>
readAllStudents
()
{
return
studentMapper
.
studentModelToDTO
(
studentRepository
.
findAll
());
}
@Override
public
StudentDTO
readStudentById
(
Long
id
)
{
return
(
studentMapper
.
studentModelToDTO
(
studentRepository
.
findById
(
id
).
get
()));
}
@Override
public
StudentDTO
updateStudentById
(
StudentDTO
studentDTO
,
Long
id
)
{
StudentDTO
dto
=
studentMapper
.
studentModelToDTO
(
studentRepository
.
findById
(
id
).
get
());
if
(
studentDTO
.
getName
()
!=
null
)
{
dto
.
setName
(
studentDTO
.
getName
());
}
if
(
studentDTO
.
getAge
()
!=
null
)
{
dto
.
setAge
(
studentDTO
.
getAge
());
}
if
(
studentDTO
.
getCourseLists
()
!=
null
)
{
dto
.
setCourseLists
(
studentDTO
.
getCourseLists
());
}
return
studentMapper
.
studentModelToDTO
(
studentRepository
.
save
(
studentMapper
.
studentDTOToModel
(
dto
)));
}
@Override
public
void
deleteStudentById
(
Long
id
)
{
studentRepository
.
deleteById
(
id
);
}
}
src/main/java/com/school/project/service/teacher/TeacherService.java
View file @
1577d277
package
com
.
school
.
project
.
service
.
teacher
;
package
com
.
school
.
project
.
service
.
teacher
;
import
com.school.project.dto.TeacherDTO
;
import
com.school.project.dto.
modelDTO.
TeacherDTO
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
import
java.util.List
;
...
...
src/main/java/com/school/project/service/teacher/TeacherServiceImp.java
View file @
1577d277
package
com
.
school
.
project
.
service
.
teacher
;
package
com
.
school
.
project
.
service
.
teacher
;
import
com.school.project.dto.TeacherDTO
;
import
com.school.project.dto.
modelDTO.
TeacherDTO
;
import
com.school.project.mapper.TeacherMapper
;
import
com.school.project.mapper.TeacherMapper
;
import
com.school.project.repository.TeacherRepository
;
import
com.school.project.repository.
modelRepositery.
TeacherRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
...
src/main/java/com/school/project/service/userRegistration/StudentRegistrationService.java
View file @
1577d277
package
com
.
school
.
project
.
service
.
userRegistration
;
package
com
.
school
.
project
.
service
.
userRegistration
;
import
com.school.project.dto.StudentRegistrationDTO
;
import
com.school.project.dto.
registrationDTO.
StudentRegistrationDTO
;
import
com.school.project.dto.UserDTO
;
import
com.school.project.dto.
registrationDTO.
UserDTO
;
public
interface
StudentRegistrationService
{
public
interface
StudentRegistrationService
{
...
...
src/main/java/com/school/project/service/userRegistration/StudentRegistrationServiceImpl.java
View file @
1577d277
package
com
.
school
.
project
.
service
.
userRegistration
;
package
com
.
school
.
project
.
service
.
userRegistration
;
import
com.school.project.dto.StudentRegistrationDTO
;
import
com.school.project.dto.
registrationDTO.
StudentRegistrationDTO
;
import
com.school.project.dto.UserDTO
;
import
com.school.project.dto.
registrationDTO.
UserDTO
;
import
com.school.project.model.registration.Role
;
import
com.school.project.model.registration.Role
;
import
com.school.project.model.registration.Student
Reg
;
import
com.school.project.model.registration.Student
;
import
com.school.project.model.registration.User
;
import
com.school.project.model.registration.User
;
import
com.school.project.repository.RoleRepository
;
import
com.school.project.repository.
registrationRepositery.
RoleRepository
;
import
com.school.project.repository.StudentRegRepository
;
import
com.school.project.repository.
registrationRepositery.
StudentRegRepository
;
import
com.school.project.repository.UserRepository
;
import
com.school.project.repository.
registrationRepositery.
UserRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.security.crypto.password.PasswordEncoder
;
import
org.springframework.security.crypto.password.PasswordEncoder
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -16,7 +16,7 @@ import javax.transaction.Transactional;
...
@@ -16,7 +16,7 @@ import javax.transaction.Transactional;
import
java.util.UUID
;
import
java.util.UUID
;
@Service
@Service
public
class
StudentRegistrationServiceImpl
implements
StudentRegistrationService
{
public
class
StudentRegistrationServiceImpl
implements
StudentRegistrationService
{
@Autowired
@Autowired
private
StudentRegRepository
studentRegRepository
;
private
StudentRegRepository
studentRegRepository
;
...
@@ -34,21 +34,24 @@ public class StudentRegistrationServiceImpl implements StudentRegistrationServic
...
@@ -34,21 +34,24 @@ public class StudentRegistrationServiceImpl implements StudentRegistrationServic
@Transactional
@Transactional
public
UserDTO
registerStudent
(
StudentRegistrationDTO
studentRegistrationDTO
)
{
public
UserDTO
registerStudent
(
StudentRegistrationDTO
studentRegistrationDTO
)
{
//Creating New User
User
newUser
=
new
User
();
User
newUser
=
new
User
();
newUser
.
setEmail
(
studentRegistrationDTO
.
getEmail
());
newUser
.
setEmail
(
studentRegistrationDTO
.
getEmail
());
newUser
.
setRole
(
roleRepository
.
findByRole
(
Role
.
ROLES
.
ADMIN
.
name
()));
newUser
.
setRole
(
roleRepository
.
findByRole
(
Role
.
ROLES
.
STUDENT
.
name
()));
newUser
.
setPassword
(
passwordEncoder
.
encode
(
studentRegistrationDTO
.
getPassword
()));
newUser
.
setPassword
(
passwordEncoder
.
encode
(
studentRegistrationDTO
.
getPassword
()));
newUser
=
userRepository
.
save
(
newUser
);
newUser
=
userRepository
.
save
(
newUser
);
StudentReg
newStudentReg
=
new
StudentReg
();
//Creating New Student
Student
newStudent
=
new
Student
();
newStudentReg
.
setStudentAppUser
(
newUser
);
newStudent
.
setName
(
studentRegistrationDTO
.
getName
());
newStudentReg
.
setRollNumber
(
UUID
.
randomUUID
().
toString
());
newStudent
.
setAge
(
studentRegistrationDTO
.
getAge
());
newStudent
.
setStudentAppUser
(
newUser
);
newStudent
.
setRollNumber
(
UUID
.
randomUUID
().
toString
());
studentRegRepository
.
save
(
newStudent
Reg
);
studentRegRepository
.
save
(
newStudent
);
return
new
UserDTO
(
newUser
.
getUserId
(),
newUser
.
getEmail
());
return
new
UserDTO
(
newUser
.
getUserId
(),
newUser
.
getEmail
());
...
...
src/main/java/com/school/project/service/userRegistration/UserServiceImpl.java
View file @
1577d277
package
com
.
school
.
project
.
service
.
userRegistration
;
package
com
.
school
.
project
.
service
.
userRegistration
;
import
com.school.project.model.registration.User
;
import
com.school.project.model.registration.User
;
import
com.school.project.repository.UserRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.security.core.GrantedAuthority
;
import
org.springframework.security.core.authority.SimpleGrantedAuthority
;
import
org.springframework.security.core.userdetails.UserDetails
;
import
org.springframework.security.core.userdetails.UserDetails
;
import
org.springframework.security.core.userdetails.UserDetailsService
;
import
org.springframework.security.core.userdetails.UserDetailsService
;
import
org.springframework.security.core.userdetails.UsernameNotFoundException
;
import
org.springframework.security.core.userdetails.UsernameNotFoundException
;
import
org.springframework.security.crypto.password.PasswordEncoder
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.Set
;
@Service
@Service
public
class
UserServiceImpl
implements
UserService
,
UserDetailsService
{
public
class
UserServiceImpl
implements
UserService
,
UserDetailsService
{
...
...
src/main/resources/application.properties
View file @
1577d277
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
spring.jpa.hibernate.ddl-auto
=
update
spring.jpa.hibernate.ddl-auto
=
update
spring.datasource.url
=
jdbc:mysql://localhost:3306/school-portal
spring.datasource.url
=
jdbc:mysql://localhost:3306/school-portal
spring.datasource.username
=
root
spring.datasource.username
=
root
spring.datasource.password
=
charlie123
spring.datasource.password
=
root
#spring.jpa.hibernate.ddl-auto=update
#spring.jpa.hibernate.ddl-auto=update
#spring.datasource.url=jdbc:mysql://localhost:3306/schooldataBase
#spring.datasource.url=jdbc:mysql://localhost:3306/schooldataBase
...
...
src/main/resources/data.sql
0 → 100644
View file @
1577d277
INSERT
INTO
role
VALUES
(
1
,
'ADMIN'
);
INSERT
INTO
role
VALUES
(
2
,
'STUDENT'
);
INSERT
INTO
role
VALUES
(
3
,
'TEACHER'
);
\ No newline at end of file
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