Чуток тесты не проходят
This commit is contained in:
parent
3ecb50cec8
commit
71a1250ae1
BIN
data.mv.db
BIN
data.mv.db
Binary file not shown.
5737
data.trace.db
Normal file
5737
data.trace.db
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,8 @@
|
|||||||
package ru.IP_LabWorks.IP.University.Model;
|
package ru.IP_LabWorks.IP.University.Model;
|
||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
|
import org.hibernate.annotations.OnDelete;
|
||||||
|
import org.hibernate.annotations.OnDeleteAction;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -13,10 +15,11 @@ public class Group {
|
|||||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||||
private Long id;
|
private Long id;
|
||||||
private String name;
|
private String name;
|
||||||
@OneToMany(fetch = FetchType.EAGER)
|
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
|
||||||
private List<Student> students;
|
private List<Student> students;
|
||||||
|
|
||||||
@ManyToMany
|
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
|
||||||
|
|
||||||
private List<Subject> subjects;
|
private List<Subject> subjects;
|
||||||
|
|
||||||
public Group() {
|
public Group() {
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
package ru.IP_LabWorks.IP.University.Model;
|
package ru.IP_LabWorks.IP.University.Model;
|
||||||
|
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
|
import org.hibernate.annotations.OnDelete;
|
||||||
|
import org.hibernate.annotations.OnDeleteAction;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
@ -12,7 +14,8 @@ public class Subject {
|
|||||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||||
private Long id;
|
private Long id;
|
||||||
private String name;
|
private String name;
|
||||||
@ManyToMany(fetch = FetchType.EAGER)
|
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
|
||||||
|
@OnDelete(action = OnDeleteAction.CASCADE)
|
||||||
private List<Group> groups;
|
private List<Group> groups;
|
||||||
|
|
||||||
public Subject() {
|
public Subject() {
|
||||||
|
@ -8,7 +8,6 @@ import org.springframework.stereotype.Service;
|
|||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
import ru.IP_LabWorks.IP.University.Model.Group;
|
import ru.IP_LabWorks.IP.University.Model.Group;
|
||||||
import ru.IP_LabWorks.IP.University.Model.Student;
|
import ru.IP_LabWorks.IP.University.Model.Student;
|
||||||
import ru.IP_LabWorks.IP.University.Model.Subject;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -7,7 +7,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
import ru.IP_LabWorks.IP.University.Model.Student;
|
import ru.IP_LabWorks.IP.University.Model.Student;
|
||||||
import ru.IP_LabWorks.IP.University.Model.Subject;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ import org.springframework.stereotype.Service;
|
|||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
import ru.IP_LabWorks.IP.University.Model.Group;
|
import ru.IP_LabWorks.IP.University.Model.Group;
|
||||||
|
import ru.IP_LabWorks.IP.University.Model.Student;
|
||||||
import ru.IP_LabWorks.IP.University.Model.Subject;
|
import ru.IP_LabWorks.IP.University.Model.Subject;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -17,9 +18,6 @@ public class SubjectService {
|
|||||||
@PersistenceContext
|
@PersistenceContext
|
||||||
private EntityManager em;
|
private EntityManager em;
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private GroupService groupService;
|
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public Subject addSubject(String name){
|
public Subject addSubject(String name){
|
||||||
if (!StringUtils.hasText(name)) {
|
if (!StringUtils.hasText(name)) {
|
||||||
@ -69,7 +67,7 @@ public class SubjectService {
|
|||||||
@Transactional
|
@Transactional
|
||||||
public void addGroupToSubject(Long subjectId, Long groupId) {
|
public void addGroupToSubject(Long subjectId, Long groupId) {
|
||||||
Subject subject = findSubject(subjectId);
|
Subject subject = findSubject(subjectId);
|
||||||
Group group = groupService.findGroup(groupId);
|
Group group = em.find(Group.class, groupId);
|
||||||
subject.getGroups().add(group);
|
subject.getGroups().add(group);
|
||||||
group.getSubjects().add(subject);
|
group.getSubjects().add(subject);
|
||||||
em.merge(subject);
|
em.merge(subject);
|
||||||
@ -79,7 +77,7 @@ public class SubjectService {
|
|||||||
@Transactional
|
@Transactional
|
||||||
public void removeGroupFromSubject(Long subjectId, Long groupId) {
|
public void removeGroupFromSubject(Long subjectId, Long groupId) {
|
||||||
Subject subject = findSubject(subjectId);
|
Subject subject = findSubject(subjectId);
|
||||||
Group group = groupService.findGroup(groupId);
|
Group group = em.find(Group.class, groupId);
|
||||||
subject.getGroups().remove(group);
|
subject.getGroups().remove(group);
|
||||||
group.getSubjects().remove(subject);
|
group.getSubjects().remove(subject);
|
||||||
em.merge(subject);
|
em.merge(subject);
|
||||||
|
@ -6,9 +6,7 @@ import org.junit.jupiter.api.Test;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.boot.test.context.SpringBootTest;
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
import ru.IP_LabWorks.IP.University.Model.Student;
|
import ru.IP_LabWorks.IP.University.Model.Student;
|
||||||
import ru.IP_LabWorks.IP.University.Model.Subject;
|
|
||||||
import ru.IP_LabWorks.IP.University.Service.StudentService;
|
import ru.IP_LabWorks.IP.University.Service.StudentService;
|
||||||
import ru.IP_LabWorks.IP.University.Service.SubjectService;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user