Commit 3e163747 authored by Usman Siddiqui's avatar Usman Siddiqui

Merge branch 'course' into 'master'

Course

See merge request !4
parents 6ce91b86 7ae44194
mvnw 100755 → 100644
File mode changed from 100755 to 100644
package com.school.project.controller;
import com.fasterxml.jackson.databind.annotation.JsonAppend;
import com.school.project.dto.CourseDTO;
import com.school.project.repository.modelRepositery.CourseRepository;
import com.school.project.dto.course.CourseRegisterDTO;
import com.school.project.service.course.CourseServiceImp;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
......@@ -20,10 +19,10 @@ public class CourseController {
private CourseServiceImp courseServiceImp;
@PostMapping("/save")
private ResponseEntity saveCourse(@RequestBody CourseDTO course) {
private ResponseEntity saveCourse(@RequestBody CourseRegisterDTO course) {
try {
courseServiceImp.saveCourse(course);
return ResponseEntity.ok("Department Saved");
return ResponseEntity.ok("Course Saved");
} catch (Exception e) {
throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "Data Is Not Correct", e);
}
......
package com.school.project.controller;
import com.school.project.dto.DepartmentDTO;
import com.school.project.dto.department.DepartmentRegisterDTO;
import com.school.project.service.department.DepartmentServiceImp;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
......@@ -19,7 +19,7 @@ public class DepartmentController {
private DepartmentServiceImp departmentServiceImp;
@PostMapping("/save")
private ResponseEntity saveDepartment(@RequestBody DepartmentDTO department){
private ResponseEntity saveDepartment(@RequestBody DepartmentRegisterDTO department){
try {
departmentServiceImp.saveDepartment(department);
return ResponseEntity.ok("Department Saved");
......
......@@ -4,11 +4,10 @@ package com.school.project.controller;
import com.school.project.dto.userRegistration.AdminRegistrationDTO;
import com.school.project.dto.userRegistration.StudentRegistrationDTO;
import com.school.project.dto.userRegistration.TeacherRegistrationDTO;
import com.school.project.dto.userRegistration.UserDTO;
import com.school.project.dto.userRegistration.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.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
......@@ -32,9 +31,9 @@ public class RegistrationController {
private AdminRegistrationService adminRegistrationService;
@PostMapping("/student")
public ResponseEntity<UserDTO> registerStudent(@RequestBody StudentRegistrationDTO student) {
public ResponseEntity<UserRegistrationDTO> registerStudent(@RequestBody StudentRegistrationDTO student) {
try {
UserDTO userDTO = studentRegistrationService.registerStudent(student);
UserRegistrationDTO userDTO = studentRegistrationService.registerStudent(student);
return ResponseEntity.ok(userDTO);
} catch (Exception e) {
throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "Data is not correct", e);
......@@ -42,9 +41,9 @@ public class RegistrationController {
}
@PostMapping("/teacher")
public ResponseEntity<UserDTO> registerTeacher(@RequestBody TeacherRegistrationDTO teacher) {
public ResponseEntity<UserRegistrationDTO> registerTeacher(@RequestBody TeacherRegistrationDTO teacher) {
try {
UserDTO userDTO = teacherRegistrationService.registerTeacher(teacher);
UserRegistrationDTO userDTO = teacherRegistrationService.registerTeacher(teacher);
return ResponseEntity.ok(userDTO);
} catch (Exception e) {
throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "Data is not correct", e);
......@@ -52,9 +51,9 @@ public class RegistrationController {
}
@PostMapping("/admin")
public ResponseEntity<UserDTO> registerAdmin(@RequestBody AdminRegistrationDTO admin) {
public ResponseEntity<UserRegistrationDTO> registerAdmin(@RequestBody AdminRegistrationDTO admin) {
try {
UserDTO userDTO = adminRegistrationService.registerAdmin(admin);
UserRegistrationDTO userDTO = adminRegistrationService.registerAdmin(admin);
return ResponseEntity.ok(userDTO);
} catch (Exception e) {
throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "Data is not correct", e);
......
package com.school.project.controller;
import com.school.project.model.Student;
import com.school.project.dto.student.StudentCourseRegistrationDTO;
import com.school.project.dto.student.StudentCoursesDTO;
import com.school.project.dto.student.StudentViewDataDTO;
import com.school.project.service.courseRegistration.CourseRegistrationService;
import com.school.project.service.student.StudentServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.annotation.CurrentSecurityContext;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.security.Principal;
import java.util.List;
import java.util.Set;
@RestController
@RequestMapping("/student")
......@@ -18,12 +22,25 @@ public class StudentController {
@Autowired
private StudentServiceImpl studentService;
@GetMapping("/data/{id}")
public Student getUserDetails(@CurrentSecurityContext(expression = "authentication")
Authentication authentication , @PathVariable("id") Long id) {
@Autowired
private CourseRegistrationService courseRegistrationService;
@GetMapping("")
public StudentViewDataDTO getUserDetails(@CurrentSecurityContext(expression = "authentication") Authentication authentication) {
return studentService.viewData(authentication.getName());
}
@GetMapping("/course")
public StudentCoursesDTO showCourses(Principal principal) {
return studentService.viewCourses(studentService.getUserId(principal.getName()));
}
@PostMapping("/course/register")
public void registerCourses(Principal principal, @RequestBody Set<StudentCourseRegistrationDTO> courses) {
Student student = studentService.viewData(id);
// Student student = studentService.viewData(authentication.getName());
return student;
courseRegistrationService.courseRegistration(studentService.getUserId(principal.getName()), courses);
}
}
......@@ -6,6 +6,7 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.security.Principal;
import java.util.ArrayList;
import java.util.List;
......@@ -15,15 +16,20 @@ public class UserController {
@GetMapping("/user")
public List<String> currentUserName(@CurrentSecurityContext(expression = "authentication")
Authentication authentication) {
Authentication authentication, Principal principal) {
List<String> data = new ArrayList<>();
data.add(authentication.getName());
data.add(String.valueOf(authentication.getAuthorities()));
data.add(String.valueOf(authentication.getCredentials()));
data.add(String.valueOf(authentication.getDetails()));
data.add(String.valueOf(authentication.getPrincipal()));
data.add("\nNow Here Is Principal Details\n");
data.add(principal.getName());
return data;
}
}
package com.school.project.dto;
package com.school.project.dto.course;
import com.school.project.model.Student;
import com.school.project.model.Teacher;
import lombok.Data;
import java.util.List;
@Data
public class CourseDTO {
public class CourseRegisterDTO {
private String courseName;
......
package com.school.project.dto;
package com.school.project.dto.department;
import lombok.Data;
@Data
public class DepartmentDTO {
public class DepartmentRegisterDTO {
private String name;
......
package com.school.project.dto.student;
import lombok.Data;
@Data
public class StudentCourseRegistrationDTO {
private String courseName;
}
package com.school.project.dto.student;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.school.project.model.Course;
import jdk.jfr.DataAmount;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.List;
import java.util.Set;
@Data
@EqualsAndHashCode(exclude = "courseList")
@ToString(exclude = "courseList")
public class StudentCoursesDTO {
private String studentName;
private String studentRollNumber;
private Set<Course> courseList;
}
package com.school.project.dto.student;
import lombok.Data;
@Data
public class StudentViewDataDTO {
private String name;
private String rollNumber;
private Long age;
}
......@@ -6,7 +6,7 @@ import lombok.Data;
@Data
@AllArgsConstructor
public class UserDTO {
public class UserRegistrationDTO {
private Long userId;
private String email;
......
package com.school.project.mapper;
import com.school.project.dto.student.StudentCoursesDTO;
import com.school.project.model.Student;
import org.springframework.stereotype.Component;
@Component
public class StudentCoursesMapper {
public StudentCoursesDTO modelToDto(Student student) {
StudentCoursesDTO coursesDTO = new StudentCoursesDTO();
coursesDTO.setStudentName(student.getName());
coursesDTO.setStudentRollNumber(student.getRollNumber());
coursesDTO.setCourseList(student.getCourseLists());
return coursesDTO;
}
}
package com.school.project.mapper;
import com.school.project.dto.student.StudentViewDataDTO;
import com.school.project.model.Student;
import org.mapstruct.Mapper;
import org.springframework.stereotype.Component;
@Component
public class StudentViewDataMapper {
public StudentViewDataDTO modelToDto(Student student) {
StudentViewDataDTO studentViewDataDTO = new StudentViewDataDTO();
studentViewDataDTO.setName(student.getName());
studentViewDataDTO.setRollNumber(student.getRollNumber());
studentViewDataDTO.setAge(student.getAge());
return studentViewDataDTO;
}
}
......@@ -2,18 +2,18 @@ package com.school.project.model;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.sun.istack.NotNull;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.RequiredArgsConstructor;
import lombok.*;
import javax.persistence.*;
import java.util.List;
import java.util.Set;
@Data
@Entity()
@NoArgsConstructor
@Table(name = "Course")
@EqualsAndHashCode(exclude = {"studentList","teacherList"})
@ToString(exclude = {"studentList","teacherList"})
public class Course {
@Id
......@@ -28,12 +28,12 @@ public class Course {
@Column(name = "courseCode",unique = true)
private String courseCode;
@ManyToMany(fetch = FetchType.LAZY, mappedBy = "courseLists")
@ManyToMany(fetch = FetchType.LAZY, mappedBy = "courseLists",cascade = CascadeType.MERGE)
@JsonIgnore
private List<Student> studentList;
private Set<Student> studentList;
@ManyToMany(fetch = FetchType.LAZY, mappedBy = "courseList")
@JsonIgnore
private List<Teacher> teacherList;
private Set<Teacher> teacherList;
}
......@@ -5,17 +5,23 @@ import com.school.project.model.Course;
import com.school.project.model.userRegistration.User;
import com.sun.istack.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;
import org.springframework.context.annotation.Lazy;
import javax.persistence.*;
import java.util.List;
import java.util.Set;
@Data
@Entity()
@NoArgsConstructor
@Table(name = "Student")
@EqualsAndHashCode(exclude = {"courseLists"})
@ToString(exclude = {"courseLists","studentAppUser"})
public class Student {
@Id
......@@ -36,18 +42,18 @@ public class Student {
private Long age;
@JsonIgnore
@ManyToMany(fetch = FetchType.LAZY, cascade = {CascadeType.MERGE})
@ManyToMany(fetch = FetchType.LAZY, cascade = {CascadeType.ALL})
@Fetch(value= FetchMode.SELECT)
@JoinTable(
name = "studentsCourses",
joinColumns = {@JoinColumn(name = "student_id")},
inverseJoinColumns = {@JoinColumn(name = "course_id")}
)
private List<Course> courseLists;
private Set<Course> courseLists;
@OneToOne
@OneToOne(fetch = FetchType.LAZY)
@MapsId
@JoinColumn(name = "student_id")
@Lazy
@ToString.Exclude
@JsonIgnore
private User studentAppUser;
}
......@@ -12,6 +12,7 @@ import org.springframework.context.annotation.Lazy;
import javax.persistence.*;
import java.util.List;
import java.util.Set;
@Data
@Entity
......@@ -43,13 +44,13 @@ public class Teacher {
private Department department;
@JsonIgnore
@ManyToMany(fetch = FetchType.EAGER, cascade = {CascadeType.MERGE})
@ManyToMany(fetch = FetchType.EAGER, cascade = {CascadeType.ALL})
@JoinTable(
name = "teachersCourses",
joinColumns = {@JoinColumn(name = "teacher_id")},
inverseJoinColumns = {@JoinColumn(name = "course_id")}
)
private List<Course> courseList;
private Set<Course> courseList;
@OneToOne(fetch = FetchType.LAZY)
@MapsId
......
......@@ -21,10 +21,10 @@ public class Admin {
@Column(name = "admin_name")
private String name;
@OneToOne
@OneToOne(fetch = FetchType.LAZY)
@MapsId
@JoinColumn(name = "admin_id")
@Lazy
@ToString.Exclude
@JsonIgnore
private User adminAppUser;
}
package com.school.project.model.userRegistration;
import com.fasterxml.jackson.annotation.JsonFilter;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.school.project.model.Student;
import com.school.project.model.Teacher;
......@@ -36,19 +35,22 @@ public class User {
@NotNull
private Role role;
@OneToOne(mappedBy = "studentAppUser", cascade = {CascadeType.MERGE}, fetch = FetchType.LAZY)
@OneToOne(mappedBy = "studentAppUser", cascade = {CascadeType.ALL}, fetch = FetchType.LAZY)
@PrimaryKeyJoinColumn
@ToString.Exclude
@JsonIgnore
private Student studentUser;
@OneToOne(mappedBy = "teacherAppUser", cascade = {CascadeType.MERGE}, fetch = FetchType.LAZY)
@OneToOne(mappedBy = "teacherAppUser", cascade = {CascadeType.ALL}, fetch = FetchType.LAZY)
@PrimaryKeyJoinColumn
@ToString.Exclude
@JsonIgnore
private Teacher teacherUser;
@OneToOne(mappedBy = "adminAppUser", cascade = {CascadeType.MERGE}, fetch = FetchType.LAZY)
@OneToOne(mappedBy = "adminAppUser", cascade = {CascadeType.ALL}, fetch = FetchType.LAZY)
@PrimaryKeyJoinColumn
@ToString.Exclude
@JsonIgnore
private Admin adminUser;
}
......@@ -4,4 +4,5 @@ import com.school.project.model.Course;
import org.springframework.data.jpa.repository.JpaRepository;
public interface CourseRepository extends JpaRepository<Course,Long> {
Course findByCourseName(String name);
}
......@@ -4,4 +4,6 @@ import com.school.project.model.Student;
import org.springframework.data.jpa.repository.JpaRepository;
public interface StudentRepository extends JpaRepository<Student,Long> {
public Student findByStudentId(Long id);
}
......@@ -49,11 +49,11 @@ public class OAuth2ServerConfiguration {
.and()
.authorizeRequests()
.antMatchers("/register/**").permitAll()
.antMatchers("/department/**","/course/**","/student/").hasAuthority("ADMIN");
.antMatchers("/student/**").hasAuthority("STUDENT")
.antMatchers("/department/**", "/course/**").hasAuthority("ADMIN");
}
}
@Configuration
@EnableAuthorizationServer
protected static class AuthorizationServerConfig extends AuthorizationServerConfigurerAdapter {
......
package com.school.project.service.course;
import com.school.project.dto.CourseDTO;
import java.util.List;
import com.school.project.dto.course.CourseRegisterDTO;
public interface CourseService {
public String saveCourse(CourseDTO courseDTO);
public String saveCourse(CourseRegisterDTO courseDTO);
public List<CourseDTO> readAllCourse();
public CourseDTO readCourseById(Long id);
public CourseDTO updateCourseById(CourseDTO courseDTO, Long id);
public void deleteCourseById(Long id);
}
package com.school.project.service.course;
import com.school.project.dto.CourseDTO;
import com.school.project.dto.course.CourseRegisterDTO;
import com.school.project.model.Course;
import com.school.project.repository.modelRepositery.CourseRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.transaction.Transactional;
import java.util.List;
@Service
public class CourseServiceImp implements CourseService {
......@@ -16,7 +13,7 @@ public class CourseServiceImp implements CourseService {
public CourseRepository courseRepository;
@Override
public String saveCourse(CourseDTO courseDTO) {
public String saveCourse(CourseRegisterDTO courseDTO) {
Course newCourse = new Course();
newCourse.setCourseCode(courseDTO.getCourseCode());
......@@ -27,26 +24,6 @@ public class CourseServiceImp implements CourseService {
return "Course Saved";
}
@Override
public List<CourseDTO> readAllCourse() {
return null;
}
@Override
public CourseDTO readCourseById(Long id) {
return null;
}
@Override
public CourseDTO updateCourseById(CourseDTO courseDTO, Long id) {
return null;
}
@Override
public void deleteCourseById(Long id) {
}
/* @Transactional
@Override
public List<CourseDTO> readAllCourse() {
......
package com.school.project.service.courseRegistration;
import com.school.project.dto.student.StudentCourseRegistrationDTO;
import org.springframework.stereotype.Service;
import java.util.Set;
@Service
public interface CourseRegistrationService {
public void courseRegistration(Long id, Set<StudentCourseRegistrationDTO> courses);
}
package com.school.project.service.courseRegistration;
import com.school.project.dto.student.StudentCourseRegistrationDTO;
import com.school.project.model.Course;
import com.school.project.model.Student;
import com.school.project.repository.modelRepositery.CourseRepository;
import com.school.project.repository.modelRepositery.StudentRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.stereotype.Service;
import javax.transaction.Transactional;
import java.util.List;
import java.util.Set;
@Service
public class CourseRegistrationServiceImpl implements CourseRegistrationService {
@Autowired
private StudentRepository studentRepository;
@Autowired
private CourseRepository courseRepository;
@Override
@Transactional
@Modifying
public void courseRegistration(Long id, Set<StudentCourseRegistrationDTO> courses) {
Student student = studentRepository.findByStudentId(id);
Set<Course> studentCourses = student.getCourseLists();
courses.forEach(course -> studentCourses.add(courseRepository.findByCourseName(course.getCourseName())));
student.setCourseLists(studentCourses);
studentRepository.save(student);
}
}
package com.school.project.service.department;
import com.school.project.dto.DepartmentDTO;
import java.util.List;
import com.school.project.dto.department.DepartmentRegisterDTO;
public interface DepartmentService {
public String saveDepartment(DepartmentDTO departmentDTO);
public List<DepartmentDTO> readDepartment();
public DepartmentDTO readDepartmentById(Long id);
public DepartmentDTO updateDepartment(DepartmentDTO departmentDTO, Long id);
public void deleteDepartmentById(Long id);
public DepartmentDTO findDepartmentByName(String departmentName);
public String saveDepartment(DepartmentRegisterDTO departmentDTO);
}
package com.school.project.service.department;
import com.school.project.dto.DepartmentDTO;
import com.school.project.dto.department.DepartmentRegisterDTO;
import com.school.project.model.Department;
import com.school.project.repository.modelRepositery.DepartmentRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class DepartmentServiceImp implements DepartmentService {
@Autowired(required = true)
private DepartmentRepository departmentRepository;
@Override
public String saveDepartment(DepartmentDTO department) {
public String saveDepartment(DepartmentRegisterDTO department) {
Department newDepartment = new Department();
......@@ -25,45 +23,20 @@ public class DepartmentServiceImp implements DepartmentService {
return "Department Saved";
}
@Override
public List<DepartmentDTO> readDepartment() {
return null;
}
@Override
public DepartmentDTO readDepartmentById(Long id) {
return null;
}
@Override
public DepartmentDTO updateDepartment(DepartmentDTO departmentDTO, Long id) {
return null;
}
@Override
public void deleteDepartmentById(Long id) {
}
@Override
public DepartmentDTO findDepartmentByName(String departmentName) {
return null;
}
/* @Override
public List<DepartmentDTO> readDepartment() {
public List<DepartmentRegisterDTO> readDepartment() {
return departmentMapper.departmentListModelToDTO(departmentRepository.findAll());
}
@Override
public DepartmentDTO readDepartmentById(Long departmentId) {
public DepartmentRegisterDTO readDepartmentById(Long departmentId) {
return departmentMapper.departmentModelToDTO(departmentRepository.findById(departmentId).get());
}
@Override
public DepartmentDTO updateDepartment(DepartmentDTO departmentDTO, Long departmentId) {
DepartmentDTO dto = readDepartmentById(departmentId);
public DepartmentRegisterDTO updateDepartment(DepartmentRegisterDTO departmentDTO, Long departmentId) {
DepartmentRegisterDTO dto = readDepartmentById(departmentId);
dto.setName(departmentDTO.getName());
......@@ -78,7 +51,7 @@ public class DepartmentServiceImp implements DepartmentService {
}
@Override
public DepartmentDTO findDepartmentByName(String departmentName) {
public DepartmentRegisterDTO findDepartmentByName(String departmentName) {
return departmentMapper.departmentModelToDTO(departmentRepository.findByName(departmentName));
}
......
package com.school.project.service.student;
import com.school.project.model.Student;
import com.school.project.dto.student.StudentCoursesDTO;
import com.school.project.dto.student.StudentViewDataDTO;
public interface StudentService {
public Student viewData(String username);
public Student viewData(Long id);
public StudentViewDataDTO viewData(String username);
public void courseRegistration();
public Long getUserId(String username);
public StudentCoursesDTO viewCourses(Long id);
}
package com.school.project.service.student;
import com.school.project.model.Student;
import com.school.project.model.Teacher;
import com.school.project.repository.modelRepositery.TeacherRepository;
import com.school.project.dto.student.StudentCoursesDTO;
import com.school.project.dto.student.StudentViewDataDTO;
import com.school.project.mapper.StudentCoursesMapper;
import com.school.project.mapper.StudentViewDataMapper;
import com.school.project.model.userRegistration.User;
import com.school.project.repository.modelRepositery.StudentRepository;
import com.school.project.repository.userRegistration.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Optional;
@Service
public class StudentServiceImpl implements StudentService{
public class StudentServiceImpl implements StudentService {
@Autowired
private TeacherRepository teacherRepository;
private StudentRepository studentRepository;
@Autowired
private UserRepository userRepository;
@Autowired
private StudentViewDataMapper studentViewDataMapper;
@Autowired
private StudentCoursesMapper studentCoursesMapper;
@Override
public Student viewData(String username) {
return null;
public Long getUserId(String username) {
User user = userRepository.findUserByEmail(username).get();
return user.getUserId();
}
@Override
public Student viewData(/*String username*/ Long id) {
public StudentViewDataDTO viewData(String username) {
Teacher teacher = teacherRepository.findOneByTeacherId(id);
User user = userRepository.findUserByEmail(username).get();
StudentViewDataDTO student = studentViewDataMapper.modelToDto(studentRepository.findByStudentId(user.getUserId()));
return null;
return student;
}
@Override
public void courseRegistration() {
public StudentCoursesDTO viewCourses(Long id) {
return studentCoursesMapper.modelToDto(studentRepository.findByStudentId(id));
}
}
package com.school.project.service.userRegistration.admin;
import com.school.project.dto.userRegistration.AdminRegistrationDTO;
import com.school.project.dto.userRegistration.UserDTO;
import com.school.project.dto.userRegistration.UserRegistrationDTO;
import org.springframework.stereotype.Service;
@Service
public interface AdminRegistrationService {
public UserDTO registerAdmin(AdminRegistrationDTO admin);
public UserRegistrationDTO registerAdmin(AdminRegistrationDTO admin);
}
package com.school.project.service.userRegistration.admin;
import com.school.project.dto.userRegistration.AdminRegistrationDTO;
import com.school.project.dto.userRegistration.UserDTO;
import com.school.project.dto.userRegistration.UserRegistrationDTO;
import com.school.project.model.userRegistration.Admin;
import com.school.project.model.userRegistration.Role;
import com.school.project.model.userRegistration.User;
......@@ -27,7 +27,7 @@ public class AdminRegistrationServiceImpl implements AdminRegistrationService {
@Autowired
private PasswordEncoder passwordEncoder;
public UserDTO registerAdmin(AdminRegistrationDTO admin) {
public UserRegistrationDTO registerAdmin(AdminRegistrationDTO admin) {
User newUser = new User();
......@@ -41,7 +41,9 @@ public class AdminRegistrationServiceImpl implements AdminRegistrationService {
newAdmin.setName(admin.getName());
newAdmin.setAdminAppUser(newUser);
return new UserDTO(newUser.getUserId(), newUser.getEmail());
adminRegRepository.save(newAdmin);
return new UserRegistrationDTO(newUser.getUserId(), newUser.getEmail());
}
......
package com.school.project.service.userRegistration.student;
import com.school.project.dto.userRegistration.StudentRegistrationDTO;
import com.school.project.dto.userRegistration.UserDTO;
import com.school.project.dto.userRegistration.UserRegistrationDTO;
public interface StudentRegistrationService {
public UserDTO registerStudent(StudentRegistrationDTO studentRegistrationDTO);
public UserRegistrationDTO registerStudent(StudentRegistrationDTO studentRegistrationDTO);
}
package com.school.project.service.userRegistration.student;
import com.school.project.dto.userRegistration.StudentRegistrationDTO;
import com.school.project.dto.userRegistration.UserDTO;
import com.school.project.dto.userRegistration.UserRegistrationDTO;
import com.school.project.model.userRegistration.Role;
import com.school.project.model.Student;
import com.school.project.model.userRegistration.User;
......@@ -31,9 +31,8 @@ public class StudentRegistrationServiceImpl implements StudentRegistrationServic
@Override
@Transactional
public UserDTO registerStudent(StudentRegistrationDTO studentRegistrationDTO) {
public UserRegistrationDTO registerStudent(StudentRegistrationDTO studentRegistrationDTO) {
//Creating New User
User newUser = new User();
newUser.setEmail(studentRegistrationDTO.getEmail());
......@@ -42,7 +41,6 @@ public class StudentRegistrationServiceImpl implements StudentRegistrationServic
newUser = userRepository.save(newUser);
//Creating New Student
Student newStudent = new Student();
newStudent.setName(studentRegistrationDTO.getName());
......@@ -52,7 +50,7 @@ public class StudentRegistrationServiceImpl implements StudentRegistrationServic
studentRepository.save(newStudent);
return new UserDTO(newUser.getUserId(), newUser.getEmail());
return new UserRegistrationDTO(newUser.getUserId(), newUser.getEmail());
}
}
package com.school.project.service.userRegistration.teacher;
import com.school.project.dto.userRegistration.TeacherRegistrationDTO;
import com.school.project.dto.userRegistration.UserDTO;
import com.school.project.dto.userRegistration.UserRegistrationDTO;
public interface TeacherRegistrationService {
public UserDTO registerTeacher(TeacherRegistrationDTO teacherRegistrationDTO);
public UserRegistrationDTO registerTeacher(TeacherRegistrationDTO teacherRegistrationDTO);
}
package com.school.project.service.userRegistration.teacher;
import com.school.project.dto.userRegistration.TeacherRegistrationDTO;
import com.school.project.dto.userRegistration.UserDTO;
import com.school.project.dto.userRegistration.UserRegistrationDTO;
import com.school.project.model.userRegistration.Role;
import com.school.project.model.Teacher;
import com.school.project.model.userRegistration.User;
......@@ -31,7 +31,7 @@ public class TeacherRegistrationServiceImpl implements TeacherRegistrationServic
@Override
@Transactional
public UserDTO registerTeacher(TeacherRegistrationDTO teacherRegistrationDTO) {
public UserRegistrationDTO registerTeacher(TeacherRegistrationDTO teacherRegistrationDTO) {
User newUser = new User();
......@@ -50,7 +50,7 @@ public class TeacherRegistrationServiceImpl implements TeacherRegistrationServic
teacherRepository.save(newTeacher);
return new UserDTO(newTeacher.getTeacherId(), newUser.getEmail());
return new UserRegistrationDTO(newTeacher.getTeacherId(), newUser.getEmail());
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment