Commit f63eb4d8 authored by Darrick Yong's avatar Darrick Yong

add some backend logic

parent a68cc32f
...@@ -16,6 +16,12 @@ public class WarehouseController { ...@@ -16,6 +16,12 @@ public class WarehouseController {
@Autowired @Autowired
WarehouseOrderService orderService; WarehouseOrderService orderService;
// @CrossOrigin
// @GetMapping(value = "/orders")
// public Mono<OrderResponse> getOrders() throws InterruptedException {
// return orderService.getOrders();
// }
//
@CrossOrigin @CrossOrigin
@GetMapping(value = "/orders") @GetMapping(value = "/orders")
public Flux<WarehouseOrder> getOrders() { public Flux<WarehouseOrder> getOrders() {
......
...@@ -3,20 +3,26 @@ package com.ascendfinalproject.warehouse.models; ...@@ -3,20 +3,26 @@ package com.ascendfinalproject.warehouse.models;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
@Getter @Getter
@Setter @Setter
public class OrderResponse { public class OrderResponse {
private List<String> allIds; private List<String> allIds = new ArrayList<>();
private HashMap<String, WarehouseOrder> byId; private Map<String, WarehouseOrder> byId = new HashMap<>();
public void appendId(String id) { public void appendId(String id) {
allIds.add(id); allIds.add(id);
} }
public void addOrder(WarehouseOrder order) {
byId.put(order.getId(), order);
}
@Override @Override
public String toString() { public String toString() {
return "OrderResponse{" + return "OrderResponse{" +
......
package com.ascendfinalproject.warehouse.services; package com.ascendfinalproject.warehouse.services;
import com.ascendfinalproject.warehouse.models.Item; import com.ascendfinalproject.warehouse.models.Item;
import com.ascendfinalproject.warehouse.models.OrderResponse;
import com.ascendfinalproject.warehouse.models.WarehouseOrder; import com.ascendfinalproject.warehouse.models.WarehouseOrder;
import com.ascendfinalproject.warehouse.repositories.WarehouseOrderRepository; import com.ascendfinalproject.warehouse.repositories.WarehouseOrderRepository;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import reactor.core.publisher.Flux; import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono; import reactor.core.publisher.Mono;
...@@ -23,8 +25,28 @@ public class WarehouseOrderService { ...@@ -23,8 +25,28 @@ public class WarehouseOrderService {
return orderRepository.findById(id); return orderRepository.findById(id);
} }
// public Mono<OrderResponse> getOrders() throws InterruptedException {
// add ResponseEntity
// return orderRepository.findAll();
// OrderResponse res = new OrderResponse();
// Flux<WarehouseOrder> warehouseOrderFlux = orderRepository.findAll().log().map(order -> {
// res.addOrder(order);
// res.appendId(order.getId());
// return order;
// });
// Mono<ResponseEntity<OrderResponse>>
// return warehouseOrderFlux.doOnComplete(() -> Mono.just(res));
// return warehouseOrderFlux.next().map(wareHouse -> res)
// .doOnSuccess(subscription -> Mono.just(res));
//
//
// System.out.println("-----");
// System.out.println(res);
// Thread.sleep(2000);
// return Mono.just(res);
// }
public Flux<WarehouseOrder> getOrders() { public Flux<WarehouseOrder> getOrders() {
return orderRepository.findAll(); return orderRepository.findAll();
} }
public Mono<WarehouseOrder> createOrder(WarehouseOrder order) { public Mono<WarehouseOrder> createOrder(WarehouseOrder order) {
......
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