Skip to content

Commit 4c033bf

Browse files
committed
feat(backend): add view model for entity in product service
1 parent 5c9b46a commit 4c033bf

File tree

10 files changed

+115
-5
lines changed

10 files changed

+115
-5
lines changed

cart-service/src/main/java/com/blubin/cartservice/model/ShoppingCartItem.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@
66
import org.hibernate.annotations.OnDelete;
77
import org.hibernate.annotations.OnDeleteAction;
88

9-
import java.util.UUID;
10-
119
@Getter
1210
@Setter
1311
@Entity

product-service/src/main/java/com/blubin/productservice/viewmodel/productcategory/ProductCategoryGetVm.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@
44

55
import java.util.UUID;
66

7-
public record ProductCategoryGetVm (UUID id, String categoryName, String categoryImage, String categoryDescription) {
7+
public record ProductCategoryGetVm (UUID id,
8+
String categoryName,
9+
String categoryImage,
10+
String categoryDescription) {
811
public static ProductCategoryGetVm fromModel(ProductCategory productCategory) {
912
return new ProductCategoryGetVm(productCategory.getId(),productCategory.getCategoryName(),
1013
productCategory.getCategoryImage(),productCategory.getCategoryDescription());

product-service/src/main/java/com/blubin/productservice/viewmodel/productcategory/ProductCategoryPostVm.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@
44

55
import java.util.UUID;
66

7-
public record ProductCategoryPostVm(UUID id, String categoryName, String categoryImage, String categoryDescription) {
7+
public record ProductCategoryPostVm(UUID id,
8+
String categoryName,
9+
String categoryImage,
10+
String categoryDescription) {
811
public ProductCategory toModel(){
912
ProductCategory productCategory = new ProductCategory();
1013
productCategory.setId(id);

product-service/src/main/java/com/blubin/productservice/viewmodel/productitem/ProductItemPostVm.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public record ProductItemPostVm(UUID id,
1313
BigDecimal originalPrice,
1414
BigDecimal salePrice,
1515
String productCode) {
16-
public ProductItem toModel( Product product, Colour colour){
16+
public ProductItem toModel(Product product, Colour colour){
1717
ProductItem productItem = new ProductItem();
1818
productItem.setId(product.getId());
1919
productItem.setProduct(product);
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package com.blubin.productservice.viewmodel.productvariation;
2+
3+
import com.blubin.productservice.model.ProductVariation;
4+
import com.blubin.productservice.viewmodel.productitem.ProductItemGetVm;
5+
import com.blubin.productservice.viewmodel.sizeoption.SizeOptionGetVm;
6+
7+
import java.util.UUID;
8+
9+
public record ProductVariationGetVm(UUID varitation_id,
10+
ProductItemGetVm productItemGetVm,
11+
SizeOptionGetVm sizeOptionGetVm,
12+
Long qtyInStock) {
13+
public static ProductVariationGetVm fromModel(ProductVariation productVariation) {
14+
return new ProductVariationGetVm(
15+
productVariation.getId(),
16+
productVariation.getProductItem() != null ?
17+
ProductItemGetVm.fromModel(productVariation.getProductItem()) : null,
18+
productVariation.getSize() != null ?
19+
SizeOptionGetVm.fromModel(productVariation.getSize()) : null,
20+
productVariation.getQtyInStock()
21+
);
22+
}
23+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.blubin.productservice.viewmodel.productvariation;
2+
3+
import com.blubin.productservice.model.ProductItem;
4+
import com.blubin.productservice.model.ProductVariation;
5+
import com.blubin.productservice.model.SizeOption;
6+
7+
import java.util.UUID;
8+
9+
public record ProductVariationPostVm (UUID productItemId,
10+
UUID sizeOptionId,
11+
Long qtyInStock) {
12+
public ProductVariation toModel(ProductItem productItem, SizeOption sizeOption) {
13+
ProductVariation productVariation = new ProductVariation();
14+
productVariation.setProductItem(productItem);
15+
productVariation.setSize(sizeOption);
16+
productVariation.setQtyInStock(this.qtyInStock);
17+
return productVariation;
18+
}
19+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package com.blubin.productservice.viewmodel.sizecategory;
2+
3+
import com.blubin.productservice.model.SizeCategory;
4+
5+
import java.util.UUID;
6+
7+
public record SizeCategoryGetVm(UUID sizeCategoryId, String sizeCategoryName) {
8+
public static SizeCategoryGetVm fromModel(SizeCategory sizecategory) {
9+
return new SizeCategoryGetVm(
10+
sizecategory.getId(),
11+
sizecategory.getCategoryName()
12+
);
13+
}
14+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
package com.blubin.productservice.viewmodel.sizecategory;
2+
3+
import com.blubin.productservice.model.SizeCategory;
4+
5+
public record SizeCategoryPostVm(String sizeCategoryName) {
6+
public SizeCategory toModel(){
7+
SizeCategory sizeCategory = new SizeCategory();
8+
sizeCategory.setCategoryName(this.sizeCategoryName);
9+
return sizeCategory;
10+
}
11+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package com.blubin.productservice.viewmodel.sizeoption;
2+
3+
import com.blubin.productservice.model.SizeOption;
4+
import com.blubin.productservice.viewmodel.sizecategory.SizeCategoryGetVm;
5+
6+
import java.util.UUID;
7+
8+
public record SizeOptionGetVm(UUID sizeOptionId,
9+
String sizeName,
10+
Integer sortOrder,
11+
SizeCategoryGetVm sizeCategoryGetVm) {
12+
public static SizeOptionGetVm fromModel(SizeOption sizeOption) {
13+
return new SizeOptionGetVm(
14+
sizeOption.getId(),
15+
sizeOption.getSizeName(),
16+
sizeOption.getSortOrder(),
17+
sizeOption.getSizeCategory() != null ?
18+
SizeCategoryGetVm.fromModel(sizeOption.getSizeCategory()) : null
19+
);
20+
}
21+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package com.blubin.productservice.viewmodel.sizeoption;
2+
3+
import com.blubin.productservice.model.SizeCategory;
4+
import com.blubin.productservice.model.SizeOption;
5+
6+
import java.util.UUID;
7+
8+
public record SizeOptionPostVm(String sizeName,
9+
Integer sortOrder,
10+
UUID sizeCategoryId) {
11+
public SizeOption toModel(SizeCategory sizeCategory) {
12+
SizeOption sizeOption = new SizeOption();
13+
sizeOption.setSizeName(this.sizeName);
14+
sizeOption.setSortOrder(this.sortOrder);
15+
sizeOption.setSizeCategory(sizeCategory);
16+
return sizeOption;
17+
}
18+
}

0 commit comments

Comments
 (0)