WIP feature/listedArticles #15

Merged
Seil0 merged 33 commits from feature/listedArticles into master 2020-05-15 19:48:22 +02:00
3 changed files with 42 additions and 41 deletions
Showing only changes of commit af99e8107d - Show all commits

View File

@ -27,10 +27,10 @@ public class InternArticleController {
@GetMapping("/") @GetMapping("/")
public String internListedArticles(Model model) { public String internListedArticles(Model model) {
List<ListedArticlesListTotals> totals = new ArrayList<ListedArticlesListTotals>(); List<UImodelArticles> totals = new ArrayList<UImodelArticles>();
for (Article article : articleRepository.findAll()) { for (Article article : articleRepository.findAll()) {
ListedArticlesListTotals tmp = new ListedArticlesListTotals(); UImodelArticles tmp = new UImodelArticles();
tmp.addListedArticle(article, warehouseEntryRepository.getArticleStock(article.id).orElse(0)); tmp.addListedArticle(article, warehouseEntryRepository.getArticleStock(article.id).orElse(0));
totals.add(tmp); totals.add(tmp);
} }
@ -44,16 +44,10 @@ public class InternArticleController {
int articleid = Integer.parseInt(id); int articleid = Integer.parseInt(id);
ListedArticlesListIdTotal total = new ListedArticlesListIdTotal(); UImodelArticle total = new UImodelArticle();
total.addArticle(articleRepository.findArticleById(articleid), total.addArticle(articleRepository.findArticleById(articleid),
warehouseEntryRepository.getArticleStock(articleid).orElse(0)); warehouseEntryRepository.getArticleStock(articleid).orElse(0));
// System.out.println("GETshouldReorder: " + articleRepository.findArticleById(articleid).shouldReorder);
model.addAttribute("ArticleID", total); model.addAttribute("ArticleID", total);
@ -61,36 +55,42 @@ public class InternArticleController {
} }
@PostMapping("/{id}/saveChanges") @PostMapping("/{id}/saveChanges")
public RedirectView saveChanges(@ModelAttribute ListedArticlesListIdTotal changedArticleTotal) { public RedirectView saveChanges(
@ModelAttribute UImodelArticle changedArticleTotal,
@RequestParam("units-per-slot") String sWarehouseUnitsPerSlot,
@RequestParam("price_netto") String sPrice_netto,
@RequestParam("reorderMaxPrice") String sReorderMaxPrice,
@RequestParam("autobuy") String sShouldReorder,
@RequestParam("categories") String sCategories) {
Article oldArticle = articleRepository.findArticleById(changedArticleTotal.id); Article oldArticle = articleRepository.findArticleById(changedArticleTotal.id);
//TODO img // TODO img
//TODO price // TODO categories
//TODO reorder price /*
//TODO categories * String separatedCategories[] = sCategories.split("\\r?\\n");
*
*
* for (int i = 0; i < separatedCategories.length; i++) {
Outdated
Review

String[] separatedCategories

String[] separatedCategories
Review

fixed with a98782bc01

fixed with https://git.mosad.xyz/localhorst/e-commerce/commit/a98782bc01fcdd03b746a9030539fc2bdf9301c4
// oldArticle.shopPricePerUnitNetCent = changedArticleTotal.price_netto; *
// System.out.println("netto: " + changedArticleTotal.price_netto); * oldArticle.categories.add(separatedCategories[i]);
*
//System.out.println("POSTshouldReorder: " + oldArticle.shouldReorder); * }
//oldArticle.shouldReorder = changedArticleTotal.shouldReorder; */
System.out.println("POSTwarehouseUnitsPerSlot: " + oldArticle.warehouseUnitsPerSlot); oldArticle.shouldReorder = (sShouldReorder.equals("true")) ? true : false;
oldArticle.reorderMaxPrice = (int) (Float.parseFloat(sReorderMaxPrice) * 100);
//oldArticle.warehouseUnitsPerSlot = Integer.parseInt(changedArticleTotal.warehouseUnitsPerSlot); oldArticle.shopPricePerUnitNetCent = (int) (Float.parseFloat(sPrice_netto) * 100);
oldArticle.warehouseUnitsPerSlot = Integer.parseInt(sWarehouseUnitsPerSlot);
oldArticle.title = changedArticleTotal.title;
oldArticle.title = changedArticleTotal.title; //works oldArticle.description = changedArticleTotal.description;
oldArticle.description = changedArticleTotal.description; //works
articleRepository.save(oldArticle); // save updated article articleRepository.save(oldArticle); // save updated article
return new RedirectView("../"); return new RedirectView("../"); //return to overview page
} }
public static class ListedArticlesListTotals {
public static class UImodelArticles {
public String imgPath; public String imgPath;
@ -120,7 +120,7 @@ public class InternArticleController {
} }
} }
public static class ListedArticlesListIdTotal { public static class UImodelArticle {
public String getImgPath() { public String getImgPath() {
return imgPath; return imgPath;
@ -154,11 +154,11 @@ public class InternArticleController {
this.price_netto = price_netto; this.price_netto = price_netto;
} }
public int getReorderMaxPrice() { public String getReorderMaxPrice() {
return reorderMaxPrice; return reorderMaxPrice;
} }
public void setReorderMaxPrice(int reorderMaxPrice) { public void setReorderMaxPrice(String reorderMaxPrice) {
this.reorderMaxPrice = reorderMaxPrice; this.reorderMaxPrice = reorderMaxPrice;
} }
@ -222,7 +222,7 @@ public class InternArticleController {
public String title; public String title;
public String price; public String price;
public String price_netto; public String price_netto;
public int reorderMaxPrice; public String reorderMaxPrice;
public String categorie; public String categorie;
public int stock; public int stock;
public long offer_id; public long offer_id;
@ -240,7 +240,7 @@ public class InternArticleController {
this.stock = stock; this.stock = stock;
this.offer_id = article.related.id; this.offer_id = article.related.id;
Outdated
Review

Variablen Dekleration vor setter/getter? (Ich hab keine Ahnung ob wir da was ausgemacht haben)

Variablen Dekleration vor setter/getter? (Ich hab keine Ahnung ob wir da was ausgemacht haben)

ist ja ne ui model klasse die nur in diesem controller gebraucht wird. Wenn es keine Getter+Setter gibt werden die auch nicht gebraucht.

ist ja ne ui model klasse die nur in diesem controller gebraucht wird. Wenn es keine Getter+Setter gibt werden die auch nicht gebraucht.
Outdated
Review

Dann passt's so

Dann passt's so
Review

fixed with b1840dd845

fixed with https://git.mosad.xyz/localhorst/e-commerce/commit/b1840dd84529acb8d4949913b35e1c1aea821b00
this.id = article.id; this.id = article.id;
this.reorderMaxPrice = article.reorderMaxPrice; this.reorderMaxPrice = String.format("%.2f", ((float) article.reorderMaxPrice / 100));
this.shouldReorder = article.shouldReorder; this.shouldReorder = article.shouldReorder;
this.warehouseUnitsPerSlot = String.valueOf(article.warehouseUnitsPerSlot); this.warehouseUnitsPerSlot = String.valueOf(article.warehouseUnitsPerSlot);
this.description = article.description; this.description = article.description;

View File

@ -42,6 +42,7 @@ public class Article
@JoinTable(name = "article_categories_bindings") @JoinTable(name = "article_categories_bindings")
public Set<Category> categories = new HashSet<>(); public Set<Category> categories = new HashSet<>();
// returns all categories as string
public String getCategories() public String getCategories()
{ {
StringBuilder result = new StringBuilder(); StringBuilder result = new StringBuilder();

View File

@ -52,14 +52,14 @@
<div class="s"> <div class="s">
<p> <p>
<label for="price">Preis (Netto)</label> <label for="price">Preis (Netto)</label>
<input class="" type="number" step="0.01" name="price" th:value="${ArticleID.price_netto}"/>&nbsp;EUR <br/> <input class="" type="number" step="0.01" name="price_netto" th:value="${ArticleID.price_netto}"/>&nbsp;EUR <br/>
(19% Mwst.) (19% Mwst.)
<!-- Info von article ref--> <br/> <!-- Info von article ref--> <br/>
= <span th:text="${ArticleID.price}"></span>&nbsp;EUR Brutto = <span th:text="${ArticleID.price}"></span>&nbsp;EUR Brutto
</p> </p>
<p> <p>
<label for="max-price-buy">Maximaler Einkaufspreis (Netto)</label> <label for="max-price-buy">Maximaler Einkaufspreis (Netto)</label>
<input class="" type="number" step="0.01" name="price" th:value="${ArticleID.reorderMaxPrice}"/>&nbsp;EUR <input class="" type="number" step="0.01" name="reorderMaxPrice" th:value="${ArticleID.reorderMaxPrice}"/>&nbsp;EUR
</p> </p>
<div> <div>
<fieldset> <fieldset>
@ -76,7 +76,7 @@
<p> <p>
Bitte jede Kategorien in eine eigene Zeile Bitte jede Kategorien in eine eigene Zeile
</p> </p>
<textarea name="tags" class="full-width" rows="6"th:inline="text">[[${ArticleID.categorie}]] <textarea name="categories" class="full-width" rows="6"th:inline="text">[[${ArticleID.categorie}]]
</textarea> </textarea>
</div> </div>
@ -84,7 +84,7 @@
<div class="s"> <div class="s">
<p> <p>
<label for="price">Einheiten pro Lagerplatz</label> <label for="price">Einheiten pro Lagerplatz</label>
<input class="" type="number" name="units-per-slot" th:field="${ArticleID.warehouseUnitsPerSlot}"/> <input class="" type="number" name="units-per-slot" th:value="${ArticleID.warehouseUnitsPerSlot}"/>
</p> </p>
<p> <p>
<b>Lagerbestand: <span th:text="${ArticleID.stock}"></span></b> <b>Lagerbestand: <span th:text="${ArticleID.stock}"></span></b>