Browse Source

产品导出数据显示格式等调整

hejq 7 years ago
parent
commit
32170c16e6

+ 1 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/controller/GoodsController.java

@@ -857,7 +857,7 @@ public class GoodsController {
             return modelAndView;
         }
         PageInfo info = new PageInfo(1, JxlsExcelView.GOODS_MAX_SIZE);
-        List<Goods> goodsList = goodsService.multiSearch(info, goodsFilter);
+        List<Goods> goodsList = goodsService.getPageDataOfBackground(info, goodsFilter).getContent();
         if (CollectionUtils.isNotEmpty(goodsList)) {
             logger.info("产品导出结果 products: " + goodsList.size());
         } else {

+ 20 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/model/V_ProductPrivate.java

@@ -311,9 +311,21 @@ public class V_ProductPrivate implements Serializable {
     @Transient
     private ProductAttachSubmit productAttachSubmit;
 
+    /**
+     * goods信息
+     */
     @Transient
     private Goods goods;
 
+    /**
+     * 是否存在goods信息
+     */
+    @Transient
+    private boolean existGoods = false;
+
+    /**
+     * 企业名称
+     */
     @Transient
     private String enterpriseName;
 
@@ -681,6 +693,14 @@ public class V_ProductPrivate implements Serializable {
         return this;
     }
 
+    public boolean getExistGoods() {
+        return existGoods;
+    }
+
+    public void setExistGoods(boolean existGoods) {
+        this.existGoods = existGoods;
+    }
+
     public String getEnterpriseName() {
         return enterpriseName;
     }

+ 8 - 2
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/GoodsServiceImpl.java

@@ -20,7 +20,13 @@ import com.uas.platform.b2c.core.constant.ShortConstant;
 import com.uas.platform.b2c.core.constant.SplitChar;
 import com.uas.platform.b2c.core.constant.Status;
 import com.uas.platform.b2c.core.support.SystemSession;
-import com.uas.platform.b2c.core.utils.*;
+import com.uas.platform.b2c.core.utils.DoubleArith;
+import com.uas.platform.b2c.core.utils.FastjsonUtils;
+import com.uas.platform.b2c.core.utils.NumberUtil;
+import com.uas.platform.b2c.core.utils.PoiUtil;
+import com.uas.platform.b2c.core.utils.RegexConstant;
+import com.uas.platform.b2c.core.utils.StringUtilB2C;
+import com.uas.platform.b2c.core.utils.WriteExcelDataDelegated;
 import com.uas.platform.b2c.external.erp.commodity.util.ModelConverter;
 import com.uas.platform.b2c.prod.commodity.constant.DoubleConstant;
 import com.uas.platform.b2c.prod.commodity.constant.IntegerConstant;
@@ -3527,7 +3533,7 @@ public class GoodsServiceImpl implements GoodsService {
     @Override
     public Page<Goods> getPageDataOfBackground(final PageInfo info, GoodsFilter goodsFilter) {
         if (info == null) {
-            throw new IllegalOperatorException("分页参数丢失");
+            return new PageImpl<>(new ArrayList<>(), new PageInfo(), 0);
         }
         if (goodsFilter != null) {
             convertPageInfo(info, goodsFilter);

+ 13 - 12
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ProductServiceImpl.java

@@ -3154,7 +3154,17 @@ public class ProductServiceImpl implements ProductService {
         }
         Page<V_ProductPrivate> page = v_productPrivateDao.findAll((Root<V_ProductPrivate> root, CriteriaQuery<?> query, CriteriaBuilder builder)
                 -> query.where(info.getPredicates(root, query, builder)).getRestriction(), info);
-        page.getContent().forEach(product -> {
+        setGoodsInfo(page.getContent());
+        return page;
+    }
+
+    /**
+     * 设置物料信息
+     *
+     * @param privates
+     */
+    private void setGoodsInfo(List<V_ProductPrivate> privates) {
+        privates.forEach(product -> {
             List<Goods> goodsList = goodsDao.findByProductId(product.getId());
             Enterprise enterprise = enterpriseService.getEnterpriseInfo(product.getEnUU());
             product.setEnterpriseName(enterprise.getEnName());
@@ -3162,9 +3172,9 @@ public class ProductServiceImpl implements ProductService {
                 Goods goods = goodsList.get(0);
                 goodsService.defineGoodsInfo(goods);
                 product.setGoods(goods);
+                product.setExistGoods(true);
             }
         });
-        return page;
     }
 
     /**
@@ -3243,16 +3253,7 @@ public class ProductServiceImpl implements ProductService {
     @Override
     public List<V_ProductPrivate> findProductAndGoodsByIds(List<Long> idList) {
         List<V_ProductPrivate> privates = v_productPrivateDao.findProductInId(idList);
-        privates.forEach(product -> {
-            List<Goods> goodsList = getGoodsByProductId(product.getId());
-            Enterprise enterprise = enterpriseService.getEnterpriseInfo(product.getEnUU());
-            product.setEnterpriseName(enterprise.getEnName());
-            if (CollectionUtils.isNotEmpty(goodsList)) {
-                Goods goods = goodsList.get(0);
-                goodsService.defineGoodsInfo(goods);
-                product.setGoods(goods);
-            }
-        });
+        setGoodsInfo(privates);
         return privates;
     }
 }

BIN
src/main/resources/jxls-tpl/trade/background.xls


BIN
src/main/resources/jxls-tpl/trade/product_background.xls