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
738a421e
Commit
738a421e
authored
Jul 27, 2022
by
Muhammad Suleman
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'teacherService' into 'master'
Teacher service See merge request
!6
parents
3e163747
490fd3b0
Changes
58
Hide whitespace changes
Inline
Side-by-side
Showing
58 changed files
with
835 additions
and
147 deletions
+835
-147
AdminController.java
...n/java/com/school/project/controller/AdminController.java
+22
-0
CourseController.java
.../java/com/school/project/controller/CourseController.java
+3
-9
RegistrationController.java
...com/school/project/controller/RegistrationController.java
+2
-4
StudentController.java
...java/com/school/project/controller/StudentController.java
+3
-6
TeacherController.java
...java/com/school/project/controller/TeacherController.java
+42
-0
UserController.java
...in/java/com/school/project/controller/UserController.java
+2
-16
AddAssessmentDTO.java
...java/com/school/project/dto/teacher/AddAssessmentDTO.java
+12
-0
ObtainedMarksDTO.java
...java/com/school/project/dto/teacher/ObtainedMarksDTO.java
+13
-0
SectionsDTO.java
...main/java/com/school/project/dto/teacher/SectionsDTO.java
+16
-0
TeacherCourseAssignDTO.java
...om/school/project/dto/teacher/TeacherCourseAssignDTO.java
+15
-0
TeacherViewCoursesDTO.java
...com/school/project/dto/teacher/TeacherViewCoursesDTO.java
+18
-0
TeacherViewDataDTO.java
...va/com/school/project/dto/teacher/TeacherViewDataDTO.java
+15
-0
UploadMarksDTO.java
...n/java/com/school/project/dto/teacher/UploadMarksDTO.java
+18
-0
AssessmentToListOfAssessment.java
...m/school/project/mapper/AssessmentToListOfAssessment.java
+17
-0
MarksToListOfMarks.java
...in/java/com/school/project/mapper/MarksToListOfMarks.java
+17
-0
SectionToListOfSectionMapper.java
...m/school/project/mapper/SectionToListOfSectionMapper.java
+17
-0
StudentCoursesMapper.java
.../java/com/school/project/mapper/StudentCoursesMapper.java
+1
-1
StudentViewDataMapper.java
...java/com/school/project/mapper/StudentViewDataMapper.java
+1
-1
TeacherViewCoursesMapper.java
...a/com/school/project/mapper/TeacherViewCoursesMapper.java
+19
-0
TeacherViewDataMapper.java
...java/com/school/project/mapper/TeacherViewDataMapper.java
+21
-0
Admin.java
src/main/java/com/school/project/model/Admin.java
+8
-4
Course.java
src/main/java/com/school/project/model/Course.java
+19
-9
Department.java
src/main/java/com/school/project/model/Department.java
+7
-6
Student.java
src/main/java/com/school/project/model/Student.java
+18
-12
Teacher.java
src/main/java/com/school/project/model/Teacher.java
+7
-7
Assessment.java
src/main/java/com/school/project/model/marks/Assessment.java
+44
-0
AssessmentType.java
...n/java/com/school/project/model/marks/AssessmentType.java
+35
-0
Section.java
src/main/java/com/school/project/model/marks/Section.java
+48
-0
StudentMarks.java
...ain/java/com/school/project/model/marks/StudentMarks.java
+37
-0
Role.java
.../java/com/school/project/model/userRegistration/Role.java
+4
-6
User.java
.../java/com/school/project/model/userRegistration/User.java
+7
-8
CourseRepository.java
.../java/com/school/project/repository/CourseRepository.java
+3
-1
DepartmentRepository.java
...a/com/school/project/repository/DepartmentRepository.java
+1
-1
StudentRepository.java
...java/com/school/project/repository/StudentRepository.java
+15
-0
TeacherRepository.java
...java/com/school/project/repository/TeacherRepository.java
+5
-1
AssessmentRepository.java
...school/project/repository/marks/AssessmentRepository.java
+10
-0
AssessmentTypeRepository.java
...ol/project/repository/marks/AssessmentTypeRepository.java
+9
-0
SectionRepository.java
...om/school/project/repository/marks/SectionRepository.java
+8
-0
StudentMarksRepository.java
...hool/project/repository/marks/StudentMarksRepository.java
+7
-0
AdminRegRepository.java
...oject/repository/userRegistration/AdminRegRepository.java
+1
-2
OAuth2ServerConfiguration.java
...om/school/project/security/OAuth2ServerConfiguration.java
+1
-1
TeacherFunctionsForAdminService.java
...roject/service/admin/TeacherFunctionsForAdminService.java
+11
-0
TeacherFunctionsForAdminServiceImpl.java
...ct/service/admin/TeacherFunctionsForAdminServiceImpl.java
+49
-0
CourseService.java
...java/com/school/project/service/course/CourseService.java
+2
-1
CourseServiceImp.java
...a/com/school/project/service/course/CourseServiceImp.java
+14
-37
DepartmentServiceImp.java
...hool/project/service/department/DepartmentServiceImp.java
+1
-1
CourseRegistrationService.java
...ol/project/service/student/CourseRegistrationService.java
+1
-1
CourseRegistrationServiceImpl.java
...roject/service/student/CourseRegistrationServiceImpl.java
+3
-5
StudentServiceImpl.java
...om/school/project/service/student/StudentServiceImpl.java
+1
-1
TeacherService.java
...va/com/school/project/service/teacher/TeacherService.java
+11
-0
TeacherServiceImpl.java
...om/school/project/service/teacher/TeacherServiceImpl.java
+45
-0
UploadMarksService.java
...om/school/project/service/teacher/UploadMarksService.java
+16
-0
UploadMarksServiceImpl.java
...chool/project/service/teacher/UploadMarksServiceImpl.java
+95
-0
AdminRegistrationServiceImpl.java
.../userRegistration/admin/AdminRegistrationServiceImpl.java
+1
-1
StudentRegistrationServiceImpl.java
...rRegistration/student/StudentRegistrationServiceImpl.java
+2
-2
TeacherRegistrationServiceImpl.java
...rRegistration/teacher/TeacherRegistrationServiceImpl.java
+1
-1
application.properties
src/main/resources/application.properties
+2
-1
data.sql
src/main/resources/data.sql
+12
-1
No files found.
src/main/java/com/school/project/controller/AdminController.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
controller
;
import
com.school.project.dto.teacher.TeacherCourseAssignDTO
;
import
com.school.project.service.admin.TeacherFunctionsForAdminService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
@RestController
@RequestMapping
(
"/admin"
)
public
class
AdminController
{
@Autowired
TeacherFunctionsForAdminService
teacher
;
@PostMapping
(
"/assignCourses"
)
public
void
assignCourseToTeacher
(
@RequestBody
TeacherCourseAssignDTO
assignCourses
)
{
teacher
.
assignCourseToTeachers
(
assignCourses
);
}
}
src/main/java/com/school/project/controller/CourseController.java
View file @
738a421e
...
...
@@ -4,8 +4,6 @@ package com.school.project.controller;
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
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
...
@@ -15,17 +13,13 @@ import org.springframework.web.server.ResponseStatusException;
@RestController
@RequestMapping
(
"/course"
)
public
class
CourseController
{
@Autowired
private
CourseServiceImp
courseServiceImp
;
@PostMapping
(
"/save"
)
private
ResponseEntity
saveCourse
(
@RequestBody
CourseRegisterDTO
course
)
{
try
{
courseServiceImp
.
saveCourse
(
course
);
return
ResponseEntity
.
ok
(
"Course Saved"
);
}
catch
(
Exception
e
)
{
throw
new
ResponseStatusException
(
HttpStatus
.
BAD_REQUEST
,
"Data Is Not Correct"
,
e
);
}
private
ResponseStatusException
saveCourse
(
@RequestBody
CourseRegisterDTO
course
)
{
return
courseServiceImp
.
saveCourse
(
course
);
}
...
...
src/main/java/com/school/project/controller/RegistrationController.java
View file @
738a421e
...
...
@@ -8,13 +8,11 @@ import com.school.project.dto.userRegistration.UserRegistrationDTO;
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.Getter
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.server.ResponseStatusException
;
@RestController
...
...
src/main/java/com/school/project/controller/StudentController.java
View file @
738a421e
...
...
@@ -4,15 +4,12 @@ package com.school.project.controller;
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
.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.*
;
import
java.security.Principal
;
import
java.util.List
;
import
java.util.Set
;
@RestController
...
...
@@ -26,9 +23,9 @@ public class StudentController {
private
CourseRegistrationService
courseRegistrationService
;
@GetMapping
(
""
)
public
StudentViewDataDTO
getUserDetails
(
@CurrentSecurityContext
(
expression
=
"authentication"
)
Authentication
authentication
)
{
public
StudentViewDataDTO
getUserDetails
(
Principal
principal
)
{
return
studentService
.
viewData
(
authentication
.
getName
());
return
studentService
.
viewData
(
principal
.
getName
());
}
...
...
src/main/java/com/school/project/controller/TeacherController.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
controller
;
import
com.school.project.dto.teacher.*
;
import
com.school.project.service.teacher.TeacherServiceImpl
;
import
com.school.project.service.teacher.UploadMarksServiceImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.security.Principal
;
@RestController
@RequestMapping
(
"/teacher"
)
public
class
TeacherController
{
@Autowired
TeacherServiceImpl
teacherService
;
@Autowired
UploadMarksServiceImpl
uploadMarksService
;
@GetMapping
(
""
)
public
TeacherViewDataDTO
getTeacherData
(
Principal
principal
)
{
return
teacherService
.
getTeacherData
(
principal
.
getName
());
}
@GetMapping
(
"/course"
)
public
TeacherViewCoursesDTO
getTeacherCourses
(
Principal
principal
)
{
return
teacherService
.
getTeacherCourses
(
principal
.
getName
());
}
@PostMapping
(
"/upload/marks"
)
public
void
addAssessment
(
@RequestBody
AddAssessmentDTO
addAssessmentDTO
){
uploadMarksService
.
setAssessment
(
addAssessmentDTO
);
}
@PostMapping
(
"/upload/marks/assessments"
)
public
void
addMarks
(
@RequestBody
UploadMarksDTO
uploadMarksDTO
){
uploadMarksService
.
setObtainedMarks
(
uploadMarksDTO
);
}
}
src/main/java/com/school/project/controller/UserController.java
View file @
738a421e
...
...
@@ -15,21 +15,7 @@ import java.util.List;
public
class
UserController
{
@GetMapping
(
"/user"
)
public
List
<
String
>
currentUserName
(
@CurrentSecurityContext
(
expression
=
"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
;
public
String
currentUserName
(
Principal
principal
)
{
return
principal
.
getName
();
}
}
src/main/java/com/school/project/dto/teacher/AddAssessmentDTO.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
dto
.
teacher
;
import
lombok.Getter
;
import
lombok.Setter
;
@Getter
@Setter
public
class
AddAssessmentDTO
{
private
String
courseCode
;
private
String
assessment
;
}
src/main/java/com/school/project/dto/teacher/ObtainedMarksDTO.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
dto
.
teacher
;
import
lombok.Getter
;
import
lombok.Setter
;
@Getter
@Setter
public
class
ObtainedMarksDTO
{
private
String
studentRollNumber
;
private
Long
obtainedMarks
;
}
src/main/java/com/school/project/dto/teacher/SectionsDTO.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
dto
.
teacher
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.util.List
;
@Getter
@Setter
public
class
SectionsDTO
{
private
Long
sectionId
;
private
Long
marks
;
private
Long
weightage
;
private
List
<
ObtainedMarksDTO
>
obtainedMarksDTOS
;
}
src/main/java/com/school/project/dto/teacher/TeacherCourseAssignDTO.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
dto
.
teacher
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.util.Set
;
@Getter
@Setter
public
class
TeacherCourseAssignDTO
{
private
String
teacherNumber
;
private
Set
<
String
>
courseList
;
}
src/main/java/com/school/project/dto/teacher/TeacherViewCoursesDTO.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
dto
.
teacher
;
import
com.school.project.model.Course
;
import
lombok.Getter
;
import
lombok.RequiredArgsConstructor
;
import
lombok.Setter
;
import
org.springframework.stereotype.Component
;
import
java.util.Set
;
@Getter
@Setter
public
class
TeacherViewCoursesDTO
{
private
String
name
;
private
String
teacherNumber
;
private
Set
<
Course
>
courseList
;
}
src/main/java/com/school/project/dto/teacher/TeacherViewDataDTO.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
dto
.
teacher
;
import
com.school.project.model.Department
;
import
lombok.*
;
@Getter
@Setter
public
class
TeacherViewDataDTO
{
private
String
name
;
private
String
teacherNumber
;
private
String
degree
;
private
Department
department
;
}
src/main/java/com/school/project/dto/teacher/UploadMarksDTO.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
dto
.
teacher
;
import
com.school.project.model.marks.Section
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.util.List
;
import
java.util.Set
;
@Getter
@Setter
public
class
UploadMarksDTO
{
private
Long
assessmentId
;
private
List
<
SectionsDTO
>
sectionsList
;
}
src/main/java/com/school/project/mapper/AssessmentToListOfAssessment.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
mapper
;
import
com.school.project.model.marks.Assessment
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.List
;
@Component
public
class
AssessmentToListOfAssessment
{
public
List
<
Assessment
>
modelToList
(
Assessment
assessment
)
{
List
<
Assessment
>
assessmentList
=
new
ArrayList
<>();
assessmentList
.
add
(
assessment
);
return
assessmentList
;
}
}
src/main/java/com/school/project/mapper/MarksToListOfMarks.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
mapper
;
import
com.school.project.model.Student
;
import
com.school.project.model.marks.StudentMarks
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.List
;
@Component
public
class
MarksToListOfMarks
{
public
List
<
StudentMarks
>
modelToList
(
StudentMarks
studentMarks
)
{
List
<
StudentMarks
>
list
=
new
ArrayList
<>();
list
.
add
(
studentMarks
);
return
list
;
}
}
src/main/java/com/school/project/mapper/SectionToListOfSectionMapper.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
mapper
;
import
com.school.project.model.marks.Section
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.List
;
@Component
public
class
SectionToListOfSectionMapper
{
public
List
<
Section
>
modelToList
(
Section
section
)
{
List
<
Section
>
sectionList
=
new
ArrayList
<>();
sectionList
.
add
(
section
);
return
sectionList
;
}
}
\ No newline at end of file
src/main/java/com/school/project/mapper/StudentCoursesMapper.java
View file @
738a421e
...
...
@@ -10,7 +10,7 @@ public class StudentCoursesMapper {
public
StudentCoursesDTO
modelToDto
(
Student
student
)
{
StudentCoursesDTO
coursesDTO
=
new
StudentCoursesDTO
();
coursesDTO
.
setStudentName
(
student
.
getName
());
coursesDTO
.
setStudentName
(
student
.
get
Student
Name
());
coursesDTO
.
setStudentRollNumber
(
student
.
getRollNumber
());
coursesDTO
.
setCourseList
(
student
.
getCourseLists
());
...
...
src/main/java/com/school/project/mapper/StudentViewDataMapper.java
View file @
738a421e
...
...
@@ -12,7 +12,7 @@ public class StudentViewDataMapper {
StudentViewDataDTO
studentViewDataDTO
=
new
StudentViewDataDTO
();
studentViewDataDTO
.
setName
(
student
.
getName
());
studentViewDataDTO
.
setName
(
student
.
get
Student
Name
());
studentViewDataDTO
.
setRollNumber
(
student
.
getRollNumber
());
studentViewDataDTO
.
setAge
(
student
.
getAge
());
...
...
src/main/java/com/school/project/mapper/TeacherViewCoursesMapper.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
mapper
;
import
com.school.project.dto.teacher.TeacherViewCoursesDTO
;
import
com.school.project.model.Teacher
;
import
org.springframework.stereotype.Component
;
@Component
public
class
TeacherViewCoursesMapper
{
public
TeacherViewCoursesDTO
modelToDTO
(
Teacher
teacher
)
{
TeacherViewCoursesDTO
teacherViewCoursesDTO
=
new
TeacherViewCoursesDTO
();
teacherViewCoursesDTO
.
setName
(
teacher
.
getName
());
teacherViewCoursesDTO
.
setTeacherNumber
(
teacher
.
getTeacherNumber
());
teacherViewCoursesDTO
.
setCourseList
(
teacher
.
getCourseList
());
return
teacherViewCoursesDTO
;
}
}
src/main/java/com/school/project/mapper/TeacherViewDataMapper.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
mapper
;
import
com.school.project.dto.teacher.TeacherViewDataDTO
;
import
com.school.project.model.Teacher
;
import
org.springframework.stereotype.Component
;
@Component
public
class
TeacherViewDataMapper
{
public
TeacherViewDataDTO
modelToDto
(
Teacher
teacher
)
{
TeacherViewDataDTO
teacherViewDataDTO
=
new
TeacherViewDataDTO
();
teacherViewDataDTO
.
setName
(
teacher
.
getName
());
teacherViewDataDTO
.
setTeacherNumber
(
teacher
.
getTeacherNumber
());
teacherViewDataDTO
.
setDegree
(
teacher
.
getDegree
());
teacherViewDataDTO
.
setDepartment
(
teacher
.
getDepartment
());
return
teacherViewDataDTO
;
}
}
src/main/java/com/school/project/model/
userRegistration/
Admin.java
→
src/main/java/com/school/project/model/Admin.java
View file @
738a421e
package
com
.
school
.
project
.
model
.
userRegistration
;
package
com
.
school
.
project
.
model
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.userRegistration.User
;
import
com.sun.istack.NotNull
;
import
lombok.*
;
import
org.springframework.context.annotation.Lazy
;
import
javax.persistence.*
;
@Data
@Entity
(
name
=
"admin"
)
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@RequiredArgsConstructor
@Entity
@Table
(
name
=
"admin"
)
public
class
Admin
{
@Id
...
...
@@ -24,7 +29,6 @@ public class Admin {
@OneToOne
(
fetch
=
FetchType
.
LAZY
)
@MapsId
@JoinColumn
(
name
=
"admin_id"
)
@ToString
.
Exclude
@JsonIgnore
private
User
adminAppUser
;
}
src/main/java/com/school/project/model/Course.java
View file @
738a421e
package
com
.
school
.
project
.
model
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.marks.Assessment
;
import
com.sun.istack.NotNull
;
import
lombok.*
;
...
...
@@ -8,32 +9,41 @@ import javax.persistence.*;
import
java.util.List
;
import
java.util.Set
;
@Data
@Entity
()
@Getter
@Setter
@NoArgsConstructor
@Table
(
name
=
"Course"
)
@EqualsAndHashCode
(
exclude
=
{
"studentList"
,
"teacherList"
})
@ToString
(
exclude
=
{
"studentList"
,
"teacherList"
})
@AllArgsConstructor
@RequiredArgsConstructor
@Entity
@Table
(
name
=
"course"
)
public
class
Course
{
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
AUTO
)
private
Long
id
;
@Column
(
name
=
"course_id"
)
private
Long
courseId
;
@NotNull
@Column
(
name
=
"name"
,
unique
=
true
)
private
String
courseName
;
@NotNull
@Column
(
name
=
"course
C
ode"
,
unique
=
true
)
@Column
(
name
=
"course
_c
ode"
,
unique
=
true
)
private
String
courseCode
;
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseLists"
,
cascade
=
CascadeType
.
MERGE
)
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseLists"
,
cascade
=
CascadeType
.
ALL
)
@JsonIgnore
private
Set
<
Student
>
studentList
;
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseList"
)
@ManyToMany
(
fetch
=
FetchType
.
LAZY
,
mappedBy
=
"courseList"
,
cascade
=
CascadeType
.
ALL
)
@JsonIgnore
private
Set
<
Teacher
>
teacherList
;
@OneToMany
(
fetch
=
FetchType
.
LAZY
)
@JoinTable
(
name
=
"courses_assessments"
,
joinColumns
=
{
@JoinColumn
(
name
=
"course_id"
,
insertable
=
false
,
updatable
=
false
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"assessment_id"
,
insertable
=
false
,
updatable
=
false
)})
private
List
<
Assessment
>
assessments
;
}
src/main/java/com/school/project/model/Department.java
View file @
738a421e
package
com
.
school
.
project
.
model
;
import
com.sun.istack.NotNull
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
lombok.*
;
import
javax.persistence.*
;
import
java.util.List
;
@Data
@Entity
()
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Table
(
name
=
"Department"
)
@RequiredArgsConstructor
@Entity
@Table
(
name
=
"department"
)
public
class
Department
{
@Id
...
...
src/main/java/com/school/project/model/Student.java
View file @
738a421e
package
com
.
school
.
project
.
model
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.
Course
;
import
com.school.project.model.
marks.StudentMarks
;
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
lombok.*
;
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
()
@Getter
@Setter
@NoArgsConstructor
@Table
(
name
=
"Student"
)
@EqualsAndHashCode
(
exclude
=
{
"courseLists"
})
@ToString
(
exclude
=
{
"courseLists"
,
"studentAppUser"
})
@AllArgsConstructor
@RequiredArgsConstructor
@Entity
@Table
(
name
=
"student"
)
public
class
Student
{
@Id
...
...
@@ -35,7 +33,7 @@ public class Student {
@NotNull
@Column
(
name
=
"name"
)
private
String
n
ame
;
private
String
studentN
ame
;
@NotNull
@Column
(
name
=
"age"
)
...
...
@@ -56,4 +54,12 @@ public class Student {
@JoinColumn
(
name
=
"student_id"
)
@JsonIgnore
private
User
studentAppUser
;
@OneToMany
(
fetch
=
FetchType
.
LAZY
)
@JoinTable
(
name
=
"student_obtained_marks"
,
joinColumns
=
{
@JoinColumn
(
name
=
"student_id"
,
insertable
=
false
,
updatable
=
false
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"student_marks_id"
,
insertable
=
false
,
updatable
=
false
)})
@JsonIgnore
private
Set
<
StudentMarks
>
studentMarks
;
}
src/main/java/com/school/project/model/Teacher.java
View file @
738a421e
...
...
@@ -4,9 +4,7 @@ import com.school.project.model.Course;
import
com.school.project.model.Department
;
import
com.school.project.model.userRegistration.User
;
import
com.sun.istack.NotNull
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.ToString
;
import
lombok.*
;
import
org.codehaus.jackson.annotate.JsonIgnore
;
import
org.springframework.context.annotation.Lazy
;
...
...
@@ -14,9 +12,12 @@ import javax.persistence.*;
import
java.util.List
;
import
java.util.Set
;
@
Data
@
Entity
@
Getter
@
Setter
@NoArgsConstructor
@AllArgsConstructor
@RequiredArgsConstructor
@Entity
@Table
(
name
=
"Teacher"
)
public
class
Teacher
{
...
...
@@ -30,7 +31,7 @@ public class Teacher {
private
String
name
;
@NotNull
@Column
(
name
=
"teacher_num"
)
@Column
(
name
=
"teacher_num"
,
unique
=
true
)
private
String
teacherNumber
;
@NotNull
...
...
@@ -56,7 +57,6 @@ public class Teacher {
@MapsId
@JoinColumn
(
name
=
"teacher_id"
)
@JsonIgnore
@ToString
.
Exclude
private
User
teacherAppUser
;
...
...
src/main/java/com/school/project/model/marks/Assessment.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
model
.
marks
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.Course
;
import
com.sun.istack.NotNull
;
import
lombok.Getter
;
import
lombok.Setter
;
import
javax.persistence.*
;
import
java.util.List
;
@Getter
@Setter
@Entity
@Table
(
name
=
"assessment"
)
public
class
Assessment
{
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
SEQUENCE
)
@Column
(
name
=
"assessment_id"
)
private
Long
assessmentId
;
@ManyToOne
@JoinColumn
(
name
=
"assessment_type_id"
)
@NotNull
private
AssessmentType
assessmentType
;
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@JoinTable
(
name
=
"courses_assessments"
,
joinColumns
=
{
@JoinColumn
(
name
=
"assessment_id"
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"course_id"
)})
@NotNull
@JsonIgnore
private
Course
course
;
@OneToMany
(
fetch
=
FetchType
.
LAZY
)
@JoinTable
(
name
=
"assessment_sections"
,
joinColumns
=
{
@JoinColumn
(
name
=
"assessment_id"
,
insertable
=
false
,
updatable
=
false
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"section_id"
,
insertable
=
false
,
updatable
=
false
)})
@JsonIgnore
private
List
<
Section
>
section
;
}
src/main/java/com/school/project/model/marks/AssessmentType.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
model
.
marks
;
import
com.sun.istack.NotNull
;
import
lombok.Getter
;
import
lombok.Setter
;
import
javax.persistence.*
;
@Getter
@Setter
@Entity
@Table
(
name
=
"assessment_type"
)
public
class
AssessmentType
{
public
enum
types
{
ASSIGNMENT
,
QUIZ
,
MIDTERM
,
FINAL
,
PROJECT
,
PRESENTATION
,
REPORT
,
PARTICIPATION
,
LABWORK
,
LABTASK
}
@Id
@Column
(
name
=
"assessment_type_id"
)
private
Long
assessmentTypeId
;
@Column
(
name
=
"assessment_type_name"
)
@NotNull
private
String
assessmentTypeName
;
}
src/main/java/com/school/project/model/marks/Section.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
model
.
marks
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.sun.istack.NotNull
;
import
lombok.Getter
;
import
lombok.Setter
;
import
javax.persistence.*
;
import
java.util.List
;
import
java.util.Set
;
@Getter
@Setter
@Entity
@Table
(
name
=
"section"
)
public
class
Section
{
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
SEQUENCE
)
@Column
(
name
=
"section_id"
)
private
Long
sectionId
;
@NotNull
@Column
(
name
=
"total_marks"
)
private
Long
totalMarks
;
@NotNull
@Column
(
name
=
"total_weightage"
)
private
Long
totalWeightage
;
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@JoinTable
(
name
=
"assessment_sections"
,
joinColumns
=
{
@JoinColumn
(
name
=
"section_id"
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"assessment_id"
)})
@NotNull
@JsonIgnore
private
Assessment
assessment
;
@OneToMany
(
fetch
=
FetchType
.
LAZY
)
@JoinTable
(
name
=
"student_marks_section"
,
joinColumns
=
{
@JoinColumn
(
name
=
"section_id"
,
insertable
=
false
,
updatable
=
false
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"student_marks_id"
,
insertable
=
false
,
updatable
=
false
)})
@JsonIgnore
private
List
<
StudentMarks
>
studentMarks
;
}
src/main/java/com/school/project/model/marks/StudentMarks.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
model
.
marks
;
import
com.school.project.model.Student
;
import
com.sun.istack.NotNull
;
import
lombok.Getter
;
import
lombok.Setter
;
import
javax.persistence.*
;
@Getter
@Setter
@Entity
@Table
(
name
=
"student_marks"
)
public
class
StudentMarks
{
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
SEQUENCE
)
@Column
(
name
=
"student_marks_id"
)
private
Long
studentMarksId
;
@NotNull
@Column
(
name
=
"obtained_marks"
)
private
Long
obtainedMarks
;
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@JoinTable
(
name
=
"student_obtained_marks"
,
joinColumns
=
{
@JoinColumn
(
name
=
"student_marks_id"
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"student_id"
)})
@NotNull
private
Student
student
;
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@JoinTable
(
name
=
"student_marks_section"
,
joinColumns
=
{
@JoinColumn
(
name
=
"student_marks_id"
)},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"section_id"
)})
@NotNull
private
Section
section
;
}
src/main/java/com/school/project/model/userRegistration/Role.java
View file @
738a421e
package
com
.
school
.
project
.
model
.
userRegistration
;
import
com.sun.istack.NotNull
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
lombok.*
;
import
javax.persistence.*
;
@
Data
@
Entity
@
Getter
@
Setter
@NoArgsConstructor
@AllArgsConstructor
@RequiredArgsConstructor
@Entity
@Table
(
name
=
"role"
)
public
class
Role
{
...
...
src/main/java/com/school/project/model/userRegistration/User.java
View file @
738a421e
...
...
@@ -2,18 +2,20 @@ package com.school.project.model.userRegistration;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.school.project.model.Admin
;
import
com.school.project.model.Student
;
import
com.school.project.model.Teacher
;
import
com.sun.istack.NotNull
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.ToString
;
import
lombok.*
;
import
javax.persistence.*
;
@
Data
@
Entity
@
Getter
@
Setter
@NoArgsConstructor
@AllArgsConstructor
@RequiredArgsConstructor
@Entity
@Table
(
name
=
"users"
)
public
class
User
{
...
...
@@ -37,19 +39,16 @@ public class User {
@OneToOne
(
mappedBy
=
"studentAppUser"
,
cascade
=
{
CascadeType
.
ALL
},
fetch
=
FetchType
.
LAZY
)
@PrimaryKeyJoinColumn
@ToString
.
Exclude
@JsonIgnore
private
Student
studentUser
;
@OneToOne
(
mappedBy
=
"teacherAppUser"
,
cascade
=
{
CascadeType
.
ALL
},
fetch
=
FetchType
.
LAZY
)
@PrimaryKeyJoinColumn
@ToString
.
Exclude
@JsonIgnore
private
Teacher
teacherUser
;
@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
→
src/main/java/com/school/project/repository/CourseRepository.java
View file @
738a421e
package
com
.
school
.
project
.
repository
.
modelRepositery
;
package
com
.
school
.
project
.
repository
;
import
com.school.project.model.Course
;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
CourseRepository
extends
JpaRepository
<
Course
,
Long
>
{
Course
findByCourseName
(
String
name
);
Course
findByCourseCode
(
String
name
);
}
src/main/java/com/school/project/repository/
modelRepositery/
DepartmentRepository.java
→
src/main/java/com/school/project/repository/DepartmentRepository.java
View file @
738a421e
package
com
.
school
.
project
.
repository
.
modelRepositery
;
package
com
.
school
.
project
.
repository
;
import
com.school.project.model.Department
;
import
org.springframework.data.jpa.repository.JpaRepository
;
...
...
src/main/java/com/school/project/repository/
modelRepositery/
StudentRepository.java
→
src/main/java/com/school/project/repository/StudentRepository.java
View file @
738a421e
package
com
.
school
.
project
.
repository
.
modelRepositery
;
package
com
.
school
.
project
.
repository
;
import
com.school.project.model.Student
;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
StudentRepository
extends
JpaRepository
<
Student
,
Long
>
{
import
java.util.List
;
public
Student
findByStudentId
(
Long
id
);
public
interface
StudentRepository
extends
JpaRepository
<
Student
,
Long
>
{
Student
findByStudentId
(
Long
id
);
Student
findByStudentName
(
String
name
);
Student
findByRollNumber
(
String
rollNumber
);
}
src/main/java/com/school/project/repository/
modelRepositery/
TeacherRepository.java
→
src/main/java/com/school/project/repository/TeacherRepository.java
View file @
738a421e
package
com
.
school
.
project
.
repository
.
modelRepositery
;
package
com
.
school
.
project
.
repository
;
import
com.school.project.model.Teacher
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.Query
;
import
org.springframework.stereotype.Repository
;
@Repository
public
interface
TeacherRepository
extends
JpaRepository
<
Teacher
,
Long
>
{
Teacher
findOneByTeacherId
(
Long
id
);
@Query
(
value
=
"SELECT * FROM teacher WHERE teacher_num= ?1"
,
nativeQuery
=
true
)
Teacher
findByTeacherNumber
(
String
number
);
}
src/main/java/com/school/project/repository/marks/AssessmentRepository.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
repository
.
marks
;
import
com.school.project.model.marks.Assessment
;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
AssessmentRepository
extends
JpaRepository
<
Assessment
,
Long
>
{
Assessment
findByAssessmentId
(
Long
id
);
}
src/main/java/com/school/project/repository/marks/AssessmentTypeRepository.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
repository
.
marks
;
import
com.school.project.model.marks.AssessmentType
;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
AssessmentTypeRepository
extends
JpaRepository
<
AssessmentType
,
Long
>
{
AssessmentType
findByAssessmentTypeName
(
String
name
);
}
src/main/java/com/school/project/repository/marks/SectionRepository.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
repository
.
marks
;
import
com.school.project.model.marks.Section
;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
SectionRepository
extends
JpaRepository
<
Section
,
Long
>
{
}
src/main/java/com/school/project/repository/marks/StudentMarksRepository.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
repository
.
marks
;
import
com.school.project.model.marks.StudentMarks
;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
StudentMarksRepository
extends
JpaRepository
<
StudentMarks
,
Long
>
{
}
src/main/java/com/school/project/repository/userRegistration/AdminRegRepository.java
View file @
738a421e
package
com
.
school
.
project
.
repository
.
userRegistration
;
import
com.school.project.model.userRegistration.Admin
;
import
lombok.RequiredArgsConstructor
;
import
com.school.project.model.Admin
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.stereotype.Repository
;
...
...
src/main/java/com/school/project/security/OAuth2ServerConfiguration.java
View file @
738a421e
...
...
@@ -50,7 +50,7 @@ public class OAuth2ServerConfiguration {
.
authorizeRequests
()
.
antMatchers
(
"/register/**"
).
permitAll
()
.
antMatchers
(
"/student/**"
).
hasAuthority
(
"STUDENT"
)
.
antMatchers
(
"/department/**"
,
"/course/**"
).
hasAuthority
(
"ADMIN"
);
.
antMatchers
(
"/department/**"
,
"/course/**"
,
"/admin/**"
).
hasAuthority
(
"ADMIN"
);
}
}
...
...
src/main/java/com/school/project/service/admin/TeacherFunctionsForAdminService.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
service
.
admin
;
import
com.school.project.dto.teacher.TeacherCourseAssignDTO
;
import
java.util.Set
;
public
interface
TeacherFunctionsForAdminService
{
public
Long
getUserId
(
String
username
);
void
assignCourseToTeachers
(
TeacherCourseAssignDTO
assignCourses
);
}
src/main/java/com/school/project/service/admin/TeacherFunctionsForAdminServiceImpl.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
service
.
admin
;
import
com.school.project.dto.teacher.TeacherCourseAssignDTO
;
import
com.school.project.model.Course
;
import
com.school.project.model.Teacher
;
import
com.school.project.model.userRegistration.User
;
import
com.school.project.repository.CourseRepository
;
import
com.school.project.repository.TeacherRepository
;
import
com.school.project.repository.userRegistration.UserRepository
;
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.Set
;
@Service
public
class
TeacherFunctionsForAdminServiceImpl
implements
TeacherFunctionsForAdminService
{
@Autowired
TeacherRepository
teacherRepository
;
@Autowired
UserRepository
userRepository
;
@Autowired
CourseRepository
courseRepository
;
@Override
public
Long
getUserId
(
String
username
)
{
User
user
=
userRepository
.
findUserByEmail
(
username
).
get
();
return
user
.
getUserId
();
}
@Override
@Transactional
@Modifying
public
void
assignCourseToTeachers
(
TeacherCourseAssignDTO
assignCourses
)
{
Teacher
teacher
=
teacherRepository
.
findByTeacherNumber
(
assignCourses
.
getTeacherNumber
());
Set
<
Course
>
teacherCourses
=
teacher
.
getCourseList
();
Set
<
String
>
newCourses
=
assignCourses
.
getCourseList
();
newCourses
.
forEach
(
course
->
teacherCourses
.
add
(
courseRepository
.
findByCourseName
(
course
)));
teacher
.
setCourseList
(
teacherCourses
);
}
}
src/main/java/com/school/project/service/course/CourseService.java
View file @
738a421e
...
...
@@ -2,9 +2,10 @@ package com.school.project.service.course;
import
com.school.project.dto.course.CourseRegisterDTO
;
import
org.springframework.web.server.ResponseStatusException
;
public
interface
CourseService
{
public
String
saveCourse
(
CourseRegisterDTO
courseDTO
);
public
ResponseStatusException
saveCourse
(
CourseRegisterDTO
courseDTO
);
}
src/main/java/com/school/project/service/course/CourseServiceImp.java
View file @
738a421e
...
...
@@ -2,60 +2,37 @@ package com.school.project.service.course;
import
com.school.project.dto.course.CourseRegisterDTO
;
import
com.school.project.model.Course
;
import
com.school.project.repository.
modelRepositery.
CourseRepository
;
import
com.school.project.repository.CourseRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.stereotype.Service
;
import
org.springframework.web.server.ResponseStatusException
;
@Service
public
class
CourseServiceImp
implements
CourseService
{
private
static
final
String
courseMessage
=
"Course Saved"
;
private
static
final
String
incorrectData
=
"Data Is Not Correct"
;
@Autowired
(
required
=
true
)
public
CourseRepository
courseRepository
;
@Override
public
String
saveCourse
(
CourseRegisterDTO
courseDTO
)
{
Course
newCourse
=
new
Course
();
public
ResponseStatusException
saveCourse
(
CourseRegisterDTO
courseDTO
)
{
newCourse
.
setCourseCode
(
courseDTO
.
getCourseCode
());
newCourse
.
setCourseName
(
courseDTO
.
getCourseName
());
try
{
courseRepository
.
save
(
newCourse
);
Course
newCourse
=
new
Course
(
);
return
"Course Saved"
;
}
newCourse
.
setCourseCode
(
courseDTO
.
getCourseCode
())
;
newCourse
.
setCourseName
(
courseDTO
.
getCourseName
());
/* @Transactional
@Override
public List<CourseDTO> readAllCourse() {
return courseMapper.courseModelToDTO(courseRepository.findAll());
}
courseRepository
.
save
(
newCourse
);
@Override
public CourseDTO readCourseById(Long id) {
return courseMapper.courseModelToDTO(courseRepository.findById(id).get());
}
return
new
ResponseStatusException
(
HttpStatus
.
OK
,
courseMessage
);
@Override
public CourseDTO updateCourseById(CourseDTO courseDTO, Long id) {
CourseDTO dto = readCourseById(id);
}
catch
(
Exception
e
)
{
if (courseDTO.getTitle() != null) {
dto.setTitle(courseDTO.getTitle());
return
new
ResponseStatusException
(
HttpStatus
.
BAD_REQUEST
,
incorrectData
,
e
);
}
if (courseDTO.getTeacherList() != null) {
dto.setTeacherList(courseDTO.getTeacherList());
}
if (courseDTO.getStudentList() != null) {
dto.setStudentList(courseDTO.getStudentList());
}
return courseMapper.courseModelToDTO(
courseRepository.save(
courseMapper.courseDTOToModel(dto)));
}
@Override
public void deleteCourseById(Long id) {
courseRepository.deleteById(id);
}*/
}
src/main/java/com/school/project/service/department/DepartmentServiceImp.java
View file @
738a421e
...
...
@@ -2,7 +2,7 @@ package com.school.project.service.department;
import
com.school.project.dto.department.DepartmentRegisterDTO
;
import
com.school.project.model.Department
;
import
com.school.project.repository.
modelRepositery.
DepartmentRepository
;
import
com.school.project.repository.DepartmentRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
src/main/java/com/school/project/service/
courseRegistration
/CourseRegistrationService.java
→
src/main/java/com/school/project/service/
student
/CourseRegistrationService.java
View file @
738a421e
package
com
.
school
.
project
.
service
.
courseRegistration
;
package
com
.
school
.
project
.
service
.
student
;
import
com.school.project.dto.student.StudentCourseRegistrationDTO
;
import
org.springframework.stereotype.Service
;
...
...
src/main/java/com/school/project/service/
courseRegistration
/CourseRegistrationServiceImpl.java
→
src/main/java/com/school/project/service/
student
/CourseRegistrationServiceImpl.java
View file @
738a421e
package
com
.
school
.
project
.
service
.
courseRegistration
;
package
com
.
school
.
project
.
service
.
student
;
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
com.school.project.repository.CourseRepository
;
import
com.school.project.repository.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
...
...
@@ -35,7 +34,6 @@ public class CourseRegistrationServiceImpl implements CourseRegistrationService
student
.
setCourseLists
(
studentCourses
);
studentRepository
.
save
(
student
);
}
}
src/main/java/com/school/project/service/student/StudentServiceImpl.java
View file @
738a421e
...
...
@@ -5,7 +5,7 @@ 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.StudentRepository
;
import
com.school.project.repository.userRegistration.UserRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
src/main/java/com/school/project/service/teacher/TeacherService.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
service
.
teacher
;
import
com.school.project.dto.teacher.TeacherViewCoursesDTO
;
import
com.school.project.dto.teacher.TeacherViewDataDTO
;
public
interface
TeacherService
{
TeacherViewDataDTO
getTeacherData
(
String
username
);
TeacherViewCoursesDTO
getTeacherCourses
(
String
username
);
}
src/main/java/com/school/project/service/teacher/TeacherServiceImpl.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
service
.
teacher
;
import
com.school.project.dto.teacher.TeacherViewCoursesDTO
;
import
com.school.project.dto.teacher.TeacherViewDataDTO
;
import
com.school.project.mapper.TeacherViewCoursesMapper
;
import
com.school.project.mapper.TeacherViewDataMapper
;
import
com.school.project.model.userRegistration.User
;
import
com.school.project.repository.*
;
import
com.school.project.repository.userRegistration.UserRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
@Service
public
class
TeacherServiceImpl
implements
TeacherService
{
@Autowired
TeacherRepository
teacherRepository
;
@Autowired
UserRepository
userRepository
;
@Autowired
TeacherViewDataMapper
teacherViewDataMapper
;
@Autowired
TeacherViewCoursesMapper
teacherViewCoursesMapper
;
@Override
public
TeacherViewDataDTO
getTeacherData
(
String
username
)
{
User
user
=
userRepository
.
findUserByEmail
(
username
).
get
();
return
teacherViewDataMapper
.
modelToDto
(
teacherRepository
.
findOneByTeacherId
(
user
.
getUserId
()));
}
@Override
public
TeacherViewCoursesDTO
getTeacherCourses
(
String
username
)
{
User
user
=
userRepository
.
findUserByEmail
(
username
).
get
();
return
teacherViewCoursesMapper
.
modelToDTO
(
teacherRepository
.
findOneByTeacherId
(
user
.
getUserId
()));
}
}
src/main/java/com/school/project/service/teacher/UploadMarksService.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
service
.
teacher
;
import
com.school.project.dto.teacher.AddAssessmentDTO
;
import
com.school.project.dto.teacher.ObtainedMarksDTO
;
import
com.school.project.dto.teacher.UploadMarksDTO
;
import
com.school.project.model.marks.Assessment
;
import
com.school.project.model.marks.Section
;
import
org.springframework.stereotype.Service
;
@Service
public
interface
UploadMarksService
{
void
setAssessment
(
AddAssessmentDTO
assessmentDTO
);
void
setObtainedMarks
(
UploadMarksDTO
uploadMarksDTO
);
}
src/main/java/com/school/project/service/teacher/UploadMarksServiceImpl.java
0 → 100644
View file @
738a421e
package
com
.
school
.
project
.
service
.
teacher
;
import
com.school.project.dto.teacher.AddAssessmentDTO
;
import
com.school.project.dto.teacher.UploadMarksDTO
;
import
com.school.project.mapper.AssessmentToListOfAssessment
;
import
com.school.project.model.Course
;
import
com.school.project.model.Student
;
import
com.school.project.model.marks.Assessment
;
import
com.school.project.model.marks.Section
;
import
com.school.project.model.marks.StudentMarks
;
import
com.school.project.repository.CourseRepository
;
import
com.school.project.repository.StudentRepository
;
import
com.school.project.repository.marks.AssessmentRepository
;
import
com.school.project.repository.marks.AssessmentTypeRepository
;
import
com.school.project.repository.marks.SectionRepository
;
import
com.school.project.repository.marks.StudentMarksRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
javax.transaction.Transactional
;
@Service
public
class
UploadMarksServiceImpl
implements
UploadMarksService
{
@Autowired
CourseRepository
courseRepository
;
@Autowired
StudentRepository
studentRepository
;
@Autowired
AssessmentTypeRepository
assessmentTypeRepository
;
@Autowired
AssessmentRepository
assessmentRepository
;
@Autowired
SectionRepository
sectionRepository
;
@Autowired
StudentMarksRepository
studentMarksRepository
;
@Autowired
AssessmentToListOfAssessment
assessmentMapper
;
@Override
@Transactional
public
void
setAssessment
(
AddAssessmentDTO
assessmentDTO
)
{
Assessment
assessment
=
new
Assessment
();
Course
course
=
courseRepository
.
findByCourseCode
(
assessmentDTO
.
getCourseCode
());
assessment
.
setAssessmentType
(
assessmentTypeRepository
.
findByAssessmentTypeName
(
assessmentDTO
.
getAssessment
()));
assessment
.
setCourse
(
course
);
assessmentRepository
.
save
(
assessment
);
}
@Override
@Transactional
public
void
setObtainedMarks
(
UploadMarksDTO
uploadMarksDTO
)
{
Assessment
assessment
=
assessmentRepository
.
findByAssessmentId
(
uploadMarksDTO
.
getAssessmentId
());
uploadMarksDTO
.
getSectionsList
().
forEach
(
sectionInList
->
{
Section
newSection
=
new
Section
();
newSection
.
setTotalMarks
(
sectionInList
.
getMarks
());
newSection
.
setTotalWeightage
(
sectionInList
.
getWeightage
());
newSection
.
setAssessment
(
assessment
);
Section
section
=
sectionRepository
.
save
(
newSection
);
sectionInList
.
getObtainedMarksDTOS
().
forEach
(
obtainedMarksInList
->
{
Student
student
=
studentRepository
.
findByRollNumber
(
obtainedMarksInList
.
getStudentRollNumber
());
StudentMarks
studentMarks
=
new
StudentMarks
();
studentMarks
.
setObtainedMarks
(
obtainedMarksInList
.
getObtainedMarks
());
studentMarks
.
setStudent
(
student
);
studentMarks
.
setSection
(
section
);
studentMarksRepository
.
save
(
studentMarks
);
});
}
);
}
}
src/main/java/com/school/project/service/userRegistration/admin/AdminRegistrationServiceImpl.java
View file @
738a421e
...
...
@@ -2,7 +2,7 @@ package com.school.project.service.userRegistration.admin;
import
com.school.project.dto.userRegistration.AdminRegistrationDTO
;
import
com.school.project.dto.userRegistration.UserRegistrationDTO
;
import
com.school.project.model.
userRegistration.
Admin
;
import
com.school.project.model.Admin
;
import
com.school.project.model.userRegistration.Role
;
import
com.school.project.model.userRegistration.User
;
import
com.school.project.repository.userRegistration.AdminRegRepository
;
...
...
src/main/java/com/school/project/service/userRegistration/student/StudentRegistrationServiceImpl.java
View file @
738a421e
...
...
@@ -6,7 +6,7 @@ import com.school.project.model.userRegistration.Role;
import
com.school.project.model.Student
;
import
com.school.project.model.userRegistration.User
;
import
com.school.project.repository.userRegistration.RoleRepository
;
import
com.school.project.repository.
modelRepositery.
StudentRepository
;
import
com.school.project.repository.StudentRepository
;
import
com.school.project.repository.userRegistration.UserRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.security.crypto.password.PasswordEncoder
;
...
...
@@ -43,7 +43,7 @@ public class StudentRegistrationServiceImpl implements StudentRegistrationServic
Student
newStudent
=
new
Student
();
newStudent
.
setName
(
studentRegistrationDTO
.
getName
());
newStudent
.
set
Student
Name
(
studentRegistrationDTO
.
getName
());
newStudent
.
setAge
(
studentRegistrationDTO
.
getAge
());
newStudent
.
setStudentAppUser
(
newUser
);
newStudent
.
setRollNumber
(
studentRegistrationDTO
.
getRollNumber
());
...
...
src/main/java/com/school/project/service/userRegistration/teacher/TeacherRegistrationServiceImpl.java
View file @
738a421e
...
...
@@ -6,7 +6,7 @@ import com.school.project.model.userRegistration.Role;
import
com.school.project.model.Teacher
;
import
com.school.project.model.userRegistration.User
;
import
com.school.project.repository.userRegistration.RoleRepository
;
import
com.school.project.repository.
modelRepositery.
TeacherRepository
;
import
com.school.project.repository.TeacherRepository
;
import
com.school.project.repository.userRegistration.UserRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.security.crypto.password.PasswordEncoder
;
...
...
src/main/resources/application.properties
View file @
738a421e
...
...
@@ -4,6 +4,7 @@ spring.datasource.url=jdbc:mysql://localhost:3306/school-portal
spring.datasource.username
=
root
spring.datasource.password
=
charlie123
spring.security.user.name
=
sulemantalpur6@gmail.com
spring.security.user.password
=
charlie
...
...
@@ -12,4 +13,4 @@ spring.mvc.view.prefix=/static
server.error.include-message
=
always
spring.datasource.data
=
data.sql
\ No newline at end of file
spring.datasource.data
=
classpath:data.sql
\ No newline at end of file
src/main/resources/data.sql
View file @
738a421e
INSERT
INTO
role
VALUES
(
1
,
'ADMIN'
);
INSERT
INTO
role
VALUES
(
2
,
'STUDENT'
);
INSERT
INTO
role
VALUES
(
3
,
'TEACHER'
);
\ No newline at end of file
INSERT
INTO
role
VALUES
(
3
,
'TEACHER'
);
INSERT
INTO
assessment_type
VALUES
(
1
,
'ASSIGNMENT'
);
INSERT
INTO
assessment_type
VALUES
(
2
,
'QUIZ'
);
INSERT
INTO
assessment_type
VALUES
(
3
,
'MIDTERM'
);
INSERT
INTO
assessment_type
VALUES
(
4
,
'FINAL'
);
INSERT
INTO
assessment_type
VALUES
(
5
,
'PROJECT'
);
INSERT
INTO
assessment_type
VALUES
(
6
,
'PRESENTATION'
);
INSERT
INTO
assessment_type
VALUES
(
7
,
'REPORT'
);
INSERT
INTO
assessment_type
VALUES
(
8
,
'PARTICIPATION'
);
INSERT
INTO
assessment_type
VALUES
(
9
,
'LABWORK'
);
INSERT
INTO
assessment_type
VALUES
(
10
,
'LABTASK'
);
\ 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