This repository has been archived on 2020-08-02. You can view files and clone it, but cannot push or open issues or pull requests.
e-commerce/prototype/src/main/java/org/hso/ecommerce/app/RequestController.java

235 lines
6.0 KiB
Java
Raw Normal View History

package org.hso.ecommerce.app;
import org.hso.ecommerce.contoller.Login;
import org.hso.ecommerce.db.CustomerRepository;
import org.hso.ecommerce.entities.Customer;
2020-01-05 01:41:45 +01:00
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.Cookie;
2020-03-06 15:19:56 +01:00
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.UUID;
/**
* TODO clean up this class
*/
@Controller
public class RequestController {
2020-02-03 20:53:02 +01:00
static int notSoRandom = 0;
@GetMapping("/")
2020-01-23 19:08:04 +01:00
public String home() {
return "redirect:/shop/";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/login")
public String login() {
return "login";
}
2020-01-25 20:30:26 +01:00
@PostMapping("/login")
public String loginPost(HttpServletResponse response, @RequestParam(value = "goto", required = false) String gto) {
response.addCookie(new Cookie("login", "true"));
if (gto != null && gto.startsWith("/")) {
return "redirect:" + gto;
} else {
return "redirect:/";
}
2020-01-25 20:30:26 +01:00
}
2020-01-25 22:13:26 +01:00
@PostMapping("/logout")
public String logoutPost(HttpServletResponse response) {
response.addCookie(new Cookie("login", "false"));
return "redirect:/";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/register")
public String register() {
return "register";
}
2020-01-11 16:39:34 +01:00
2020-01-23 19:08:04 +01:00
@GetMapping("/shop/")
public String shop() {
return "shop/index";
2020-01-18 15:34:54 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/shop/search")
public String shopSearch() {
return "shop/search";
}
2020-01-11 16:39:34 +01:00
2020-01-25 20:30:26 +01:00
@GetMapping("/shop/checkout")
public String shopCheckout() {
return "shop/checkout";
2020-01-25 20:30:26 +01:00
}
@PostMapping("/shop/checkoutFinish")
public String shopCheckoutFinish() {
return "shop/checkoutFinish";
2020-01-25 20:30:26 +01:00
}
@GetMapping("/shop/checkoutFinish")
public String shopCheckoutFinishGET() {
return "shop/checkoutFinish";
2020-01-25 20:30:26 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/shop/articles/{id}")
public String shopArticlesById() {
return "shop/articles/id";
2020-01-22 19:27:45 +01:00
}
2020-01-16 21:01:15 +01:00
2020-01-25 20:30:26 +01:00
@PostMapping("/shop/articles/{id}")
2020-03-06 15:19:56 +01:00
public String shopArticlesByIdBuy(@RequestAttribute("customer") Boolean isCustomer, @PathVariable("id") Integer id, @RequestParam("fastcheckout") Boolean fastcheckout ) {
if (isCustomer) {
2020-03-06 15:19:56 +01:00
if (!fastcheckout) {
return "shop/articles/post_add";
} else {
return "shop/checkout";
}
} else {
return "redirect:/login?goto=%2Fshop%2Farticles%2F"+id;
}
2020-01-25 20:30:26 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/about")
public String about() {
return "about";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/terms")
public String terms() {
return "terms";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/privacy")
public String privacy() {
return "privacy";
2020-01-22 19:27:45 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/")
public String intern() {
return "intern/index";
2020-01-22 19:27:45 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/listedArticles/")
public String internListedArticles() {
return "intern/listedArticles/index";
2020-01-22 19:27:45 +01:00
}
2020-02-01 23:43:44 +01:00
@GetMapping("/intern/listedArticles/{id}")
public String internListedArticlesId() {
return "intern/listedArticles/id";
2020-02-01 23:43:44 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/articles/")
public String internArticles() {
return "intern/articles/index";
2020-01-22 19:27:45 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/articles/{id}")
public String internArticlesId() {
return "intern/articles/id";
2020-01-22 19:27:45 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/customers/")
public String internCustomers() {
return "intern/customers/index";
2020-01-22 19:27:45 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/customers/{id}")
public String internCustomersId() {
return "intern/customers/id";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/customerOrders/")
public String internCustomerOrder() {
return "intern/customerOrders/index";
2020-01-22 19:27:45 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/customerOrders/{id}")
public String internCustomerOrdersId() {
return "intern/customerOrders/id";
2020-01-22 19:27:45 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/suppliers/")
public String internSuppliers() {
return "intern/suppliers/index";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/suppliers/{id}")
public String internSuppliersId() {
return "intern/suppliers/id";
}
2020-01-22 19:27:45 +01:00
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/supplierOrders/")
public String internSupplierOrders() {
return "intern/supplierOrders/index";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/supplierOrders/{id}")
public String internSupplierOrdersId() {
return "intern/supplierOrders/id";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/accounting/")
public String accounting() {
return "intern/accounting/index";
2020-01-23 19:08:04 +01:00
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/accounting/vat")
public String accountingVat() {
return "intern/accounting/vat";
}
2020-01-27 20:37:54 +01:00
@GetMapping("/intern/accounting/main")
2020-01-23 19:08:04 +01:00
public String accountingIntern() {
return "intern/accounting/main";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/accounting/addManual")
public String accountingAddManual() {
return "intern/accounting/addManual";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/warehouse/")
public String accountingWarehouse() {
return "intern/warehouse/index";
2020-02-03 20:53:02 +01:00
}
@GetMapping("/intern/warehouse/todo")
public String accountingWarehouseTodo() {
return "intern/warehouse/todo";
}
2020-01-23 19:08:04 +01:00
@GetMapping("/intern/warehouse/addManual")
public String accountingWarehouseAddManual() {
return "intern/warehouse/addManual";
2020-01-23 19:08:04 +01:00
}
2020-02-03 20:53:02 +01:00
@PostMapping("/intern/warehouse/progress/{id}")
public String accountingWarehouseProgressIdPost(HttpServletResponse response) {
if((notSoRandom++) % 2 == 1) {
return "redirect:/intern/warehouse/progress/450";
} else {
response.setStatus(409);
return "intern/warehouse/error_progress_failed";
2020-02-03 20:53:02 +01:00
}
}
@GetMapping("/intern/warehouse/progress/{id}")
public String accountingWarehouseProgressId() {
return "intern/warehouse/id_progress";
2020-02-03 20:53:02 +01:00
}
@GetMapping("/intern/warehouse/slots/")
public String accountingWarehouseSlots() {
return "intern/warehouse/slots/index";
2020-02-03 20:53:02 +01:00
}
}