From 6e65c26e3cfb171b774ea12fe51b91e116b6d4b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Wo=C5=BAniak?= Date: Wed, 6 Jan 2021 13:40:04 +0100 Subject: [PATCH] Checkpoint: szkielet MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marcin Woźniak --- .../com/plannaplan/entities/Exchange.java | 57 +++++++++++++++++++ .../repositories/ExchangeRepository.java | 11 ++++ .../plannaplan/services/ExchangeService.java | 18 ++++++ .../controllers/ExchangeController.java | 27 +++++++++ 4 files changed, 113 insertions(+) create mode 100644 buisnesslogic/src/main/java/com/plannaplan/entities/Exchange.java create mode 100644 buisnesslogic/src/main/java/com/plannaplan/repositories/ExchangeRepository.java create mode 100644 buisnesslogic/src/main/java/com/plannaplan/services/ExchangeService.java create mode 100644 restservice/src/main/java/com/plannaplan/controllers/ExchangeController.java diff --git a/buisnesslogic/src/main/java/com/plannaplan/entities/Exchange.java b/buisnesslogic/src/main/java/com/plannaplan/entities/Exchange.java new file mode 100644 index 0000000..9f8293d --- /dev/null +++ b/buisnesslogic/src/main/java/com/plannaplan/entities/Exchange.java @@ -0,0 +1,57 @@ +package com.plannaplan.entities; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; + +@Entity +public class Exchange { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private Long id; + + private User trader; + private Assignment ownedAssignment; + private Groups desiredAssignment; + + public Exchange() { + + } + + public Exchange(User trader, Assignment ownedAssignment, Groups desiredAssignment){ + this.trader = trader; + this.ownedAssignment = ownedAssignment; + this.desiredAssignment = desiredAssignment; + } + + public Long getId(){ + return this.id; + } + + public Groups getDesiredAssignment() { + return desiredAssignment; + } + + public void setDesiredAssignment(Groups desiredAssignment) { + this.desiredAssignment = desiredAssignment; + } + + public Assignment getOwnedAssignment() { + return ownedAssignment; + } + + public void setOwnedAssignment(Assignment ownedAssignment) { + this.ownedAssignment = ownedAssignment; + } + + public User getTrader() { + return trader; + } + + public void setTrader(User trader) { + this.trader = trader; + } + +} diff --git a/buisnesslogic/src/main/java/com/plannaplan/repositories/ExchangeRepository.java b/buisnesslogic/src/main/java/com/plannaplan/repositories/ExchangeRepository.java new file mode 100644 index 0000000..5c6be33 --- /dev/null +++ b/buisnesslogic/src/main/java/com/plannaplan/repositories/ExchangeRepository.java @@ -0,0 +1,11 @@ +package com.plannaplan.repositories; + +import com.plannaplan.entities.Exchange; + +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface ExchangeRepository extends JpaRepository{ + +} diff --git a/buisnesslogic/src/main/java/com/plannaplan/services/ExchangeService.java b/buisnesslogic/src/main/java/com/plannaplan/services/ExchangeService.java new file mode 100644 index 0000000..59d8002 --- /dev/null +++ b/buisnesslogic/src/main/java/com/plannaplan/services/ExchangeService.java @@ -0,0 +1,18 @@ +package com.plannaplan.services; + +import com.plannaplan.entities.Exchange; +import com.plannaplan.repositories.ExchangeRepository; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class ExchangeService { + + @Autowired + private ExchangeRepository repo; + + public Exchange save(Exchange exchange){ + return this.repo.save(exchange); + } +} diff --git a/restservice/src/main/java/com/plannaplan/controllers/ExchangeController.java b/restservice/src/main/java/com/plannaplan/controllers/ExchangeController.java new file mode 100644 index 0000000..79d67e8 --- /dev/null +++ b/restservice/src/main/java/com/plannaplan/controllers/ExchangeController.java @@ -0,0 +1,27 @@ +package com.plannaplan.controllers; + +import java.util.Map; + +import com.plannaplan.App; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.CrossOrigin; +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 io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + +@RestController +@CrossOrigin +@RequestMapping("/api/" + App.API_VERSION + "/exchanges") +@Api(tags = { "Exchange" }, value = "Exchange", description = "Endpoint to exchange with accepted assignments.") +public class ExchangeController { + + @PostMapping("/exchange") + @ApiOperation(value = "Return all courses") + public ResponseEntity createExchange(@RequestBody Map exchangeRequest){ + return null; + } +}