xiongzhu 4 سال پیش
والد
کامیت
828d5ba585

+ 6 - 0
src/main/java/com/izouma/nineth/domain/BlindBoxItem.java

@@ -2,6 +2,7 @@ package com.izouma.nineth.domain;
 
 import com.izouma.nineth.annotations.Searchable;
 import com.izouma.nineth.converter.FileObjectListConverter;
+import com.izouma.nineth.converter.PrivilegeListConverter;
 import com.izouma.nineth.converter.PropertyListConverter;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
@@ -67,6 +68,11 @@ public class BlindBoxItem extends BaseEntity {
     @ApiModelProperty("特性")
     private List<CollectionProperty> properties;
 
+    @Column(columnDefinition = "TEXT")
+    @Convert(converter = PrivilegeListConverter.class)
+    @ApiModelProperty("特权")
+    private List<Privilege> privileges;
+
     @ApiModelProperty("是否可转售")
     private boolean canResale;
 

+ 3 - 0
src/main/java/com/izouma/nineth/service/AssetService.java

@@ -75,6 +75,7 @@ public class AssetService {
 
     public Asset createAsset(Order order) {
         User user = userRepo.findById(order.getUserId()).orElseThrow(new BusinessException("用户不存在"));
+        Collection collection = collectionRepo.findById(order.getCollectionId()).orElseThrow(new BusinessException("藏品不存在"));
         Asset asset = Asset.builder()
                 .userId(user.getId())
                 .orderId(order.getId())
@@ -86,6 +87,7 @@ public class AssetService {
                 .detail(order.getDetail())
                 .pic(order.getPic())
                 .properties(order.getProperties())
+                .privileges(collection.getPrivileges())
                 .category(order.getCategory())
                 .canResale(order.isCanResale())
                 .royalties(order.getRoyalties())
@@ -124,6 +126,7 @@ public class AssetService {
                 .detail(winItem.getDetail())
                 .pic(winItem.getPic())
                 .properties(winItem.getProperties())
+                .privileges(winItem.getPrivileges())
                 .canResale(winItem.isCanResale())
                 .royalties(winItem.getRoyalties())
                 .serviceCharge(winItem.getServiceCharge())