Search in sources :

Example 1 with Designation

use of com.bigcrowd.noticeBoard.entities.Designation in project Notice-Board by FulvioFPimentel.

the class MeetingService method delete.

public void delete(Long id) {
    try {
        Meeting meeting = repository.getById(id);
        for (Support sub : meeting.getSupports()) {
            List<Designation> desig = new ArrayList<>();
            sub.getDesignations().forEach(x -> desig.add(x));
            sub.getDesignations().clear();
            for (Designation des : desig) {
                designationRepository.delete(designationRepository.getById(des.getId()));
            }
            supportRepository.deleteById(sub.getId());
        }
        for (Prayer prayer : meeting.getPrayers()) {
            designationRepository.deleteById(prayer.getDesignation().getId());
            prayerRepository.deleteById(prayer.getId());
        }
        meeting.getCanticles().clear();
        meeting.getPrayers().clear();
        List<Segmentation> seg = segmentationRepository.findByMeeting(meeting);
        for (Segmentation s : seg) {
            for (Designation des : s.getDesignations()) {
                designationRepository.deleteById(des.getId());
            }
            segmentationRepository.deleteById(s.getId());
        }
        designationRepository.deleteById(meeting.getPresidency().getDesignation().getId());
        presidencyRepository.deleteById(meeting.getPresidency().getId());
        repository.deleteById(id);
    } catch (RuntimeException e) {
        e.getMessage();
    }
}
Also used : Designation(com.bigcrowd.noticeBoard.entities.Designation) Support(com.bigcrowd.noticeBoard.entities.Support) Segmentation(com.bigcrowd.noticeBoard.entities.Segmentation) Meeting(com.bigcrowd.noticeBoard.entities.Meeting) ArrayList(java.util.ArrayList) Prayer(com.bigcrowd.noticeBoard.entities.Prayer)

Example 2 with Designation

use of com.bigcrowd.noticeBoard.entities.Designation in project Notice-Board by FulvioFPimentel.

the class MeetingService method insert.

@Transactional
public MeetingSaveDTO insert(MeetingSaveDTO dto) {
    Meeting meeting = new Meeting();
    Assignment assignment = assignmentRepository.getById(dto.getPresidency().getDesignation().getAssignment().getId());
    Person person = personRepository.getById(dto.getPresidency().getDesignation().getPerson().getId());
    Designation designation = new Designation();
    designation.setAssignment(assignment);
    designation.setPerson(person);
    Presidency presidency = new Presidency();
    presidency.setDesignation(designation);
    presidency.setMeeting(meeting);
    presidency = presidencyRepository.saveAndFlush(presidency);
    for (CanticleSaveDTO cDto : dto.getCanticles()) {
        Canticle canticle = canticleRepository.getById(cDto.getId());
        meeting.getCanticles().add(canticle);
    }
    for (PrayerSaveDTO pDto : dto.getPrayers()) {
        Assignment prayerAssignment = assignmentRepository.getById(pDto.getDesignation().getAssignment().getId());
        Person prayerPerson = personRepository.getById(pDto.getDesignation().getPerson().getId());
        Designation prayerDesignation = new Designation();
        prayerDesignation.setAssignment(prayerAssignment);
        prayerDesignation.setPerson(prayerPerson);
        Prayer prayer = new Prayer();
        prayer.setMoment(pDto.getMoment());
        prayer.setDesignation(prayerDesignation);
        prayer.setMeeting(meeting);
        prayer = prayerRepository.saveAndFlush(prayer);
        meeting.getPrayers().add(prayer);
    }
    Session session;
    for (SessionSaveDTO sDto : dto.getSessions()) {
        if (sDto.getId() == null) {
            session = new Session();
            session.setSession(sDto.getSession());
            sessionRepository.saveAndFlush(session);
        } else {
            session = sessionRepository.getById(sDto.getId());
        }
        for (SubSessionSaveDTO ssDto : sDto.getSubsessions()) {
            SubSession subsession;
            if (ssDto.getId() == null) {
                subsession = new SubSession();
                subsession.setSubSession(ssDto.getSubSession());
                subSessionRepository.saveAndFlush(subsession);
            } else {
                subsession = subSessionRepository.getById(ssDto.getId());
            }
            Segmentation segmantation = new Segmentation();
            segmantation.setMeeting(meeting);
            segmantation.setSession(session);
            segmantation.setSubSession(subsession);
            segmantation = segmentationRepository.saveAndFlush(segmantation);
            for (DesignationSaveDTO dDto : ssDto.getDesignations()) {
                Person subPerson = personRepository.getById(dDto.getPerson().getId());
                Assignment subAssignment = assignmentRepository.getById(dDto.getAssignment().getId());
                Designation subDesignation = new Designation();
                subDesignation.setPerson(subPerson);
                subDesignation.setAssignment(subAssignment);
                subDesignation.getSegmentations().add(segmantation);
                subDesignation = designationRepository.saveAndFlush(subDesignation);
            }
            meeting.getSegmentations().add(segmantation);
        }
    }
    meeting.setDate(dto.getDate());
    meeting.setPresidency(presidency);
    meeting = repository.saveAndFlush(meeting);
    return new MeetingSaveDTO(meeting, presidency);
}
Also used : Designation(com.bigcrowd.noticeBoard.entities.Designation) DesignationSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.DesignationSaveDTO) Canticle(com.bigcrowd.noticeBoard.entities.Canticle) SubSession(com.bigcrowd.noticeBoard.entities.SubSession) Segmentation(com.bigcrowd.noticeBoard.entities.Segmentation) Meeting(com.bigcrowd.noticeBoard.entities.Meeting) SubSessionSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.SubSessionSaveDTO) SessionSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.SessionSaveDTO) Presidency(com.bigcrowd.noticeBoard.entities.Presidency) SubSessionSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.SubSessionSaveDTO) CanticleSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.CanticleSaveDTO) Assignment(com.bigcrowd.noticeBoard.entities.Assignment) MeetingSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.MeetingSaveDTO) PrayerSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.PrayerSaveDTO) Person(com.bigcrowd.noticeBoard.entities.Person) Prayer(com.bigcrowd.noticeBoard.entities.Prayer) SubSession(com.bigcrowd.noticeBoard.entities.SubSession) Session(com.bigcrowd.noticeBoard.entities.Session) Transactional(org.springframework.transaction.annotation.Transactional)

Example 3 with Designation

use of com.bigcrowd.noticeBoard.entities.Designation in project Notice-Board by FulvioFPimentel.

the class MeetingService method update.

@Transactional
public MeetingSaveDTO update(Long id, MeetingSaveDTO dto) {
    Meeting meeting = repository.getById(id);
    Assignment assignment = assignmentRepository.getById(dto.getPresidency().getDesignation().getAssignment().getId());
    Person person = personRepository.getById(dto.getPresidency().getDesignation().getPerson().getId());
    Designation desigPresidency = designationRepository.getById(meeting.getPresidency().getDesignation().getId());
    desigPresidency.setAssignment(assignment);
    desigPresidency.setPerson(person);
    desigPresidency = designationRepository.saveAndFlush(desigPresidency);
    Presidency presidency = presidencyRepository.getById(meeting.getPresidency().getId());
    presidency.setMeeting(meeting);
    presidency.setDesignation(desigPresidency);
    presidency = presidencyRepository.saveAndFlush(presidency);
    meeting.getCanticles().clear();
    for (CanticleSaveDTO cDto : dto.getCanticles()) {
        Canticle canticle = canticleRepository.getById(cDto.getId());
        canticle = canticleRepository.saveAndFlush(canticle);
        meeting.getCanticles().add(canticle);
    }
    meeting.getPrayers().clear();
    for (PrayerSaveDTO pDto : dto.getPrayers()) {
        Assignment prayerAssignment = assignmentRepository.getById(pDto.getDesignation().getAssignment().getId());
        Person prayerPerson = personRepository.getById(pDto.getDesignation().getPerson().getId());
        Designation prayerDesignation = designationRepository.getById(pDto.getDesignation().getId());
        prayerDesignation.setAssignment(prayerAssignment);
        prayerDesignation.setPerson(prayerPerson);
        Prayer prayer = prayerRepository.getById(pDto.getId());
        prayer.setMoment(pDto.getMoment());
        prayer.setDesignation(prayerDesignation);
        prayer.setMeeting(meeting);
        prayer = prayerRepository.saveAndFlush(prayer);
        meeting.getPrayers().add(prayer);
    }
    long sessionID = 0;
    for (SessionSaveDTO sDTO : dto.getSessions()) {
        for (Segmentation s : meeting.getSegmentations()) {
            if (sDTO.getId() == s.getSession().getId()) {
                if (sessionID == 0 || sessionID != sDTO.getId()) {
                    Session session = sessionRepository.getById(s.getSession().getId());
                    sessionID = sDTO.getId();
                    session.setSession(sDTO.getSession());
                    session = sessionRepository.saveAndFlush(session);
                }
            }
        }
        for (SubSessionSaveDTO ssDTO : sDTO.getSubsessions()) {
            for (Segmentation s : meeting.getSegmentations()) {
                if (ssDTO.getId() == s.getSubSession().getId()) {
                    SubSession subsession = subSessionRepository.getById(s.getSubSession().getId());
                    subsession.setSubSession(ssDTO.getSubSession());
                    subsession = subSessionRepository.saveAndFlush(subsession);
                }
            }
            for (DesignationSaveDTO dDTO : ssDTO.getDesignations()) {
                long designationID = 0;
                for (Segmentation s : meeting.getSegmentations()) {
                    for (Designation desig : s.getDesignations()) {
                        if (designationID != dDTO.getId() && desig.getId() == dDTO.getId()) {
                            Designation designation = designationRepository.getById(desig.getId());
                            Person personDesig = personRepository.getById(dDTO.getPerson().getId());
                            Assignment assignmentDesig = assignmentRepository.getById(dDTO.getAssignment().getId());
                            designation.setPerson(personDesig);
                            designation.setAssignment(assignmentDesig);
                            designation = designationRepository.saveAndFlush(designation);
                        }
                    }
                }
            }
        }
    }
    meeting.setDate(dto.getDate());
    meeting = repository.saveAndFlush(meeting);
    return new MeetingSaveDTO(meeting);
}
Also used : Designation(com.bigcrowd.noticeBoard.entities.Designation) DesignationSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.DesignationSaveDTO) Canticle(com.bigcrowd.noticeBoard.entities.Canticle) Segmentation(com.bigcrowd.noticeBoard.entities.Segmentation) SubSession(com.bigcrowd.noticeBoard.entities.SubSession) Meeting(com.bigcrowd.noticeBoard.entities.Meeting) SubSessionSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.SubSessionSaveDTO) SessionSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.SessionSaveDTO) Presidency(com.bigcrowd.noticeBoard.entities.Presidency) SubSessionSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.SubSessionSaveDTO) CanticleSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.CanticleSaveDTO) Assignment(com.bigcrowd.noticeBoard.entities.Assignment) MeetingSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.MeetingSaveDTO) PrayerSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.PrayerSaveDTO) Person(com.bigcrowd.noticeBoard.entities.Person) Prayer(com.bigcrowd.noticeBoard.entities.Prayer) SubSession(com.bigcrowd.noticeBoard.entities.SubSession) Session(com.bigcrowd.noticeBoard.entities.Session) Transactional(org.springframework.transaction.annotation.Transactional)

Example 4 with Designation

use of com.bigcrowd.noticeBoard.entities.Designation in project Notice-Board by FulvioFPimentel.

the class PersonService method findById.

@Transactional(readOnly = true)
public PersonDesignationsDTO findById(Long id) {
    Optional<Person> obj = personRepository.findById(id);
    Person person = obj.get();
    List<Designation> designations = designationRepository.findAllByPerson(person);
    return new PersonDesignationsDTO(person, designations);
}
Also used : Designation(com.bigcrowd.noticeBoard.entities.Designation) PersonDesignationsDTO(com.bigcrowd.noticeBoard.dto.PersonDesignationsDTO) Person(com.bigcrowd.noticeBoard.entities.Person) Transactional(org.springframework.transaction.annotation.Transactional)

Example 5 with Designation

use of com.bigcrowd.noticeBoard.entities.Designation in project Notice-Board by FulvioFPimentel.

the class SupportService method update.

@Transactional
public SupportSaveDTO update(Long id, SupportSaveDTO dto) {
    Support support = supportRepository.getById(id);
    support.setMeeting(support.getMeeting());
    for (DesignationSaveDTO desig : dto.getDesignations()) {
        Designation designation = designationRepository.getById(desig.getId());
        Assignment assignment = assignmentRepository.getById(desig.getAssignment().getId());
        Person person = personRepository.getById(desig.getPerson().getId());
        designation.setAssignment(assignment);
        designation.setPerson(person);
        designation = designationRepository.saveAndFlush(designation);
        support.getDesignations().add(designation);
    }
    support = supportRepository.saveAndFlush(support);
    return new SupportSaveDTO(support, support.getDesignations());
}
Also used : Assignment(com.bigcrowd.noticeBoard.entities.Assignment) SupportSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.SupportSaveDTO) Designation(com.bigcrowd.noticeBoard.entities.Designation) DesignationSaveDTO(com.bigcrowd.noticeBoard.dto.savesDTO.DesignationSaveDTO) Support(com.bigcrowd.noticeBoard.entities.Support) Person(com.bigcrowd.noticeBoard.entities.Person) Transactional(org.springframework.transaction.annotation.Transactional)

Aggregations

Designation (com.bigcrowd.noticeBoard.entities.Designation)6 Person (com.bigcrowd.noticeBoard.entities.Person)5 Transactional (org.springframework.transaction.annotation.Transactional)5 DesignationSaveDTO (com.bigcrowd.noticeBoard.dto.savesDTO.DesignationSaveDTO)4 Assignment (com.bigcrowd.noticeBoard.entities.Assignment)4 Meeting (com.bigcrowd.noticeBoard.entities.Meeting)4 Prayer (com.bigcrowd.noticeBoard.entities.Prayer)3 Segmentation (com.bigcrowd.noticeBoard.entities.Segmentation)3 Support (com.bigcrowd.noticeBoard.entities.Support)3 CanticleSaveDTO (com.bigcrowd.noticeBoard.dto.savesDTO.CanticleSaveDTO)2 MeetingSaveDTO (com.bigcrowd.noticeBoard.dto.savesDTO.MeetingSaveDTO)2 PrayerSaveDTO (com.bigcrowd.noticeBoard.dto.savesDTO.PrayerSaveDTO)2 SessionSaveDTO (com.bigcrowd.noticeBoard.dto.savesDTO.SessionSaveDTO)2 SubSessionSaveDTO (com.bigcrowd.noticeBoard.dto.savesDTO.SubSessionSaveDTO)2 Canticle (com.bigcrowd.noticeBoard.entities.Canticle)2 Presidency (com.bigcrowd.noticeBoard.entities.Presidency)2 Session (com.bigcrowd.noticeBoard.entities.Session)2 SubSession (com.bigcrowd.noticeBoard.entities.SubSession)2 PersonDesignationsDTO (com.bigcrowd.noticeBoard.dto.PersonDesignationsDTO)1 SupportDTO (com.bigcrowd.noticeBoard.dto.SupportDTO)1