From e57e32fc43da31917912eebb4e47d4e50df1a9e9 Mon Sep 17 00:00:00 2001
From: shiyj1101 <1098226878@qq.com>
Date: 星期四, 05 八月 2021 22:56:15 +0800
Subject: [PATCH] 完善格式化功能

---
 service-goods/src/main/java/com/java110/goods/bmo/productLabel/impl/GetProductLabelBMOImpl.java |   84 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 84 insertions(+), 0 deletions(-)

diff --git a/service-goods/src/main/java/com/java110/goods/bmo/productLabel/impl/GetProductLabelBMOImpl.java b/service-goods/src/main/java/com/java110/goods/bmo/productLabel/impl/GetProductLabelBMOImpl.java
old mode 100644
new mode 100755
index 21a027e..d6b306b
--- a/service-goods/src/main/java/com/java110/goods/bmo/productLabel/impl/GetProductLabelBMOImpl.java
+++ b/service-goods/src/main/java/com/java110/goods/bmo/productLabel/impl/GetProductLabelBMOImpl.java
@@ -1,8 +1,16 @@
 package com.java110.goods.bmo.productLabel.impl;
 
+import com.java110.dto.file.FileRelDto;
+import com.java110.dto.product.ProductDto;
+import com.java110.dto.product.ProductSpecDetailDto;
+import com.java110.dto.productDetail.ProductDetailDto;
 import com.java110.dto.productLabel.ProductLabelDto;
+import com.java110.dto.productSpecValue.ProductSpecValueDto;
 import com.java110.goods.bmo.productLabel.IGetProductLabelBMO;
+import com.java110.intf.common.IFileRelInnerServiceSMO;
 import com.java110.intf.goods.IProductLabelInnerServiceSMO;
+import com.java110.intf.goods.IProductSpecDetailInnerServiceSMO;
+import com.java110.intf.goods.IProductSpecValueInnerServiceSMO;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
@@ -18,6 +26,15 @@
     @Autowired
     private IProductLabelInnerServiceSMO productLabelInnerServiceSMOImpl;
 
+    @Autowired
+    private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
+
+    @Autowired
+    private IProductSpecValueInnerServiceSMO productSpecValueInnerServiceSMOImpl;
+
+    @Autowired
+    private IProductSpecDetailInnerServiceSMO productSpecDetailInnerServiceSMOImpl;
+
     /**
      * @param productLabelDto
      * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
@@ -30,6 +47,7 @@
         List<ProductLabelDto> productLabelDtos = null;
         if (count > 0) {
             productLabelDtos = productLabelInnerServiceSMOImpl.queryProductLabels(productLabelDto);
+            freshProductDtos(productLabelDtos,productLabelDto);
         } else {
             productLabelDtos = new ArrayList<>();
         }
@@ -41,4 +59,70 @@
         return responseEntity;
     }
 
+
+    private void freshProductDtos(List<ProductLabelDto> productDtos, ProductDto productDto) {
+
+        if (productDtos == null || productDtos.size() < 1) {
+            return;
+        }
+
+        //杈撳叆
+        List<String> productIds = new ArrayList<>();
+
+        for (ProductDto tmpProductDto : productDtos) {
+            productIds.add(tmpProductDto.getProductId());
+        }
+
+        FileRelDto fileRelDto = new FileRelDto();
+        fileRelDto.setObjIds(productIds.toArray(new String[productIds.size()]));
+        fileRelDto.setRelTypeCd(FileRelDto.REL_TYPE_CD_GOODS_COVER);
+        List<FileRelDto> fileRelDtos = fileRelInnerServiceSMOImpl.queryFileRels(fileRelDto);
+
+        //鍒峰叆鍥剧墖淇℃伅
+        List<String> photoVos = null;
+        String url = null;
+        for (ProductDto tmpProductDto : productDtos) {
+            for (FileRelDto tmpFileRelDto : fileRelDtos) {
+                if (tmpProductDto.getProductId().equals(tmpFileRelDto.getObjId())) {
+                    url = "/callComponent/download/getFile/file?fileId=" + tmpFileRelDto.getFileRealName() + "&communityId=-1";
+                    tmpProductDto.setCoverPhoto(url);
+                }
+            }
+        }
+        freshProductSpecValue(productDtos);
+
+    }
+
+    private void freshProductSpecValue(List<ProductLabelDto> productDtos) {
+        ProductSpecValueDto productSpecValueDto = new ProductSpecValueDto();
+        productSpecValueDto.setProductId(productDtos.get(0).getProductId());
+        productSpecValueDto.setStoreId(productDtos.get(0).getStoreId());
+        List<ProductSpecValueDto> productSpecValueDtos = productSpecValueInnerServiceSMOImpl.queryProductSpecValues(productSpecValueDto);
+
+        if (productSpecValueDtos == null || productSpecValueDtos.size() < 1) {
+            return;
+        }
+        productDtos.get(0).setProductSpecValues(productSpecValueDtos);
+
+        List<String> specIds = new ArrayList<>();
+        for (ProductSpecValueDto productSpecValue : productSpecValueDtos) {
+            specIds.add(productSpecValue.getSpecId());
+        }
+
+        ProductSpecDetailDto productSpecDetailDto = new ProductSpecDetailDto();
+        productSpecDetailDto.setSpecIds(specIds.toArray(new String[specIds.size()]));
+        productSpecDetailDto.setStoreId(productDtos.get(0).getStoreId());
+        List<ProductSpecDetailDto> productSpecDetailDtos = productSpecDetailInnerServiceSMOImpl.queryProductSpecDetails(productSpecDetailDto);
+        List<ProductSpecDetailDto> tmpProductSpecDetailDtos = null;
+        for (ProductSpecValueDto productSpecValue : productSpecValueDtos) {
+            tmpProductSpecDetailDtos = new ArrayList<>();
+            for (ProductSpecDetailDto tmpProductSpecDetailDto : productSpecDetailDtos) {
+                if (productSpecValue.getSpecId().equals(tmpProductSpecDetailDto.getSpecId())) {
+                    tmpProductSpecDetailDtos.add(tmpProductSpecDetailDto);
+                }
+            }
+            productSpecValue.setProductSpecDetails(tmpProductSpecDetailDtos);
+        }
+    }
+
 }

--
Gitblit v1.8.0