Implement API Bindings for SupplierService
This commit is contained in:
parent
62d811db1d
commit
c92e485018
|
@ -0,0 +1,27 @@
|
||||||
|
package org.hso.ecommerce.api;
|
||||||
|
|
||||||
|
import org.hso.ecommerce.api.data.Order;
|
||||||
|
import org.hso.ecommerce.api.data.OrderConfirmation;
|
||||||
|
import org.hso.ecommerce.api.data.Supplier;
|
||||||
|
import org.springframework.web.client.RestTemplate;
|
||||||
|
|
||||||
|
public class SupplierService {
|
||||||
|
|
||||||
|
private final String url;
|
||||||
|
|
||||||
|
public SupplierService(String url) {
|
||||||
|
this.url = url;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Supplier getSupplier() {
|
||||||
|
RestTemplate restTemplate = new RestTemplate();
|
||||||
|
|
||||||
|
return restTemplate.getForObject(url, Supplier.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
public OrderConfirmation order(Order order) {
|
||||||
|
RestTemplate restTemplate = new RestTemplate();
|
||||||
|
|
||||||
|
return restTemplate.postForObject(url + "/order", order, OrderConfirmation.class);
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
package org.hso.ecommerce.api.data;
|
||||||
|
|
||||||
|
public class Article {
|
||||||
|
public String title;
|
||||||
|
public String manufacturer;
|
||||||
|
public String articleNumber;
|
||||||
|
|
||||||
|
public int vatPercent;
|
||||||
|
public int pricePerUnitNet;
|
||||||
|
public boolean shouldBeAdvertised;
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
package org.hso.ecommerce.api.data;
|
||||||
|
|
||||||
|
public class Order {
|
||||||
|
public String manufacturer;
|
||||||
|
public String articleNumber;
|
||||||
|
|
||||||
|
public int quantity;
|
||||||
|
public int maxTotalPriceCentNet;
|
||||||
|
}
|
|
@ -0,0 +1,12 @@
|
||||||
|
package org.hso.ecommerce.api.data;
|
||||||
|
|
||||||
|
public class OrderConfirmation {
|
||||||
|
public String manufacturer;
|
||||||
|
public String articleNumber;
|
||||||
|
|
||||||
|
public int quantity;
|
||||||
|
|
||||||
|
public int pricePerUnitNetCent;
|
||||||
|
public int discountNetCent;
|
||||||
|
public int totalPriceNetCharged;
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
package org.hso.ecommerce.api.data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class Supplier {
|
||||||
|
|
||||||
|
public String id;
|
||||||
|
public String name;
|
||||||
|
public SupplierDiscount discount;
|
||||||
|
public List<Article> articles;
|
||||||
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
package org.hso.ecommerce.api.data;
|
||||||
|
|
||||||
|
public class SupplierDiscount {
|
||||||
|
public int minimumDailySalesVolumeNetCent;
|
||||||
|
public int percentDiscount;
|
||||||
|
}
|
Reference in New Issue