Jelajahi Sumber

调整用户持仓价值估算

sunkean 3 tahun lalu
induk
melakukan
341ad4d413

+ 12 - 1
src/main/java/com/izouma/nineth/service/UserHoldCountService.java

@@ -3,6 +3,7 @@ package com.izouma.nineth.service;
 import com.alibaba.fastjson.JSONArray;
 import com.izouma.nineth.config.Constants;
 import com.izouma.nineth.domain.Asset;
+import com.izouma.nineth.domain.Collection;
 import com.izouma.nineth.dto.PageQuery;
 import com.izouma.nineth.dto.PageWrapper;
 import com.izouma.nineth.dto.UserHoldDTO;
@@ -72,12 +73,22 @@ public class UserHoldCountService {
         if (minPriceMap.containsKey(minPriceMapKey)) {
             minPrice = minPriceMap.get(minPriceMapKey);
         } else {
+            // 该系列寄售最低价
             if (StringUtils.isBlank(nameLike)) {
                 minPrice = collectionRepo.findMinPriceByPrefixName(asset.getPrefixName());
             } else {
                 minPrice = collectionRepo.findMinPriceByNameAndPrefixName(asset.getPrefixName(), nameLike, nameNotLike);
             }
-            minPrice = Objects.isNull(minPrice) ? BigDecimal.ZERO : minPrice;
+            // 该系列没有寄售的话取originalPrice
+            if(Objects.isNull(minPrice)) {
+                Collection collection = collectionRepo.findById(asset.getCollectionId()).orElse(null);
+                if (Objects.isNull(collection)) {
+                    minPrice = BigDecimal.ZERO;
+                } else {
+                    minPrice = collection.getOriginalPrice();
+                }
+            }
+//            minPrice = Objects.isNull(minPrice) ? BigDecimal.ZERO : minPrice;
             minPriceMap.put(minPriceMapKey, minPrice);
         }
         userHoldDTO.setPrice(userHoldDTO.getPrice().add(minPrice));