|
|
@@ -1,45 +1,37 @@
|
|
|
package com.gree.mall.manager.logic.goods;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
-import cn.hutool.core.lang.TypeReference;
|
|
|
-import cn.hutool.json.JSONUtil;
|
|
|
-import com.alibaba.fastjson.JSONObject;
|
|
|
+import cn.hutool.core.collection.CollectionUtil;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.gree.mall.manager.bean.goods.GoodsLibraryBean;
|
|
|
-import com.gree.mall.manager.bean.goods.GoodsMaterialVO;
|
|
|
-import com.gree.mall.manager.bean.goods.outside.GoodsBean;
|
|
|
-import com.gree.mall.manager.bean.goods.outside.GoodsSpec;
|
|
|
+import com.gree.mall.manager.bean.goods.GoodsLibraryDocumentsRelaBean;
|
|
|
import com.gree.mall.manager.bean.listvo.goods.GoodsLibraryVO;
|
|
|
import com.gree.mall.manager.commonmapper.CommonMapper;
|
|
|
-import com.gree.mall.manager.enums.StatusEnum;
|
|
|
import com.gree.mall.manager.exception.RemoteServiceException;
|
|
|
import com.gree.mall.manager.helper.ResponseHelper;
|
|
|
import com.gree.mall.manager.logic.common.CommonLogic;
|
|
|
import com.gree.mall.manager.plus.entity.CommonFile;
|
|
|
import com.gree.mall.manager.plus.entity.GoodsLibrary;
|
|
|
+import com.gree.mall.manager.plus.entity.GoodsLibraryDocumentsRela;
|
|
|
import com.gree.mall.manager.plus.entity.GoodsLibrarySpec;
|
|
|
+import com.gree.mall.manager.plus.service.GoodsLibraryDocumentsRelaService;
|
|
|
import com.gree.mall.manager.plus.service.GoodsLibraryService;
|
|
|
import com.gree.mall.manager.plus.service.GoodsLibrarySpecService;
|
|
|
-import com.gree.mall.manager.utils.HttpUtils;
|
|
|
-import com.gree.mall.manager.utils.StringUtil;
|
|
|
import com.gree.mall.manager.utils.oss.OSSUtil;
|
|
|
import com.gree.mall.manager.zfire.bean.ZfireParamBean;
|
|
|
import com.gree.mall.manager.zfire.util.FieldUtils;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
-import org.apache.commons.lang3.StringUtils;
|
|
|
-import org.springframework.beans.factory.annotation.Value;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
-import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import java.io.InputStream;
|
|
|
-import java.math.BigDecimal;
|
|
|
-import java.net.MalformedURLException;
|
|
|
-import java.net.URL;
|
|
|
-import java.text.SimpleDateFormat;
|
|
|
-import java.util.*;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.function.Function;
|
|
|
import java.util.regex.Matcher;
|
|
|
import java.util.regex.Pattern;
|
|
|
import java.util.stream.Collectors;
|
|
|
@@ -61,7 +53,7 @@ public class GoodsLibraryLogic {
|
|
|
private final GoodsLibraryService goodsLibraryService;
|
|
|
private final GoodsLibrarySpecService goodsLibrarySpecService;
|
|
|
private final CommonMapper commonMapper;
|
|
|
-
|
|
|
+ private final GoodsLibraryDocumentsRelaService goodsLibraryDocumentsRelaService;
|
|
|
|
|
|
/**
|
|
|
* 商品库列表
|
|
|
@@ -96,6 +88,16 @@ public class GoodsLibraryLogic {
|
|
|
);
|
|
|
goodsLibrarySpecService.lambdaUpdate().eq(GoodsLibrarySpec::getGoodsLibraryId,goodsLibraryBean.getGoodsLibraryId()).remove();
|
|
|
goodsLibrarySpecService.saveOrUpdateBatch(goodsLibrarySpecList);
|
|
|
+
|
|
|
+ List<GoodsLibraryDocumentsRelaBean> goodsLibraryDocumentsRelaBeanList = goodsLibraryBean.getGoodsLibraryDocumentsRelaList();
|
|
|
+ goodsLibraryDocumentsRelaService.lambdaUpdate().eq(GoodsLibraryDocumentsRela::getGoodsLibraryId, goodsLibraryBean.getGoodsLibraryId()).remove();
|
|
|
+ goodsLibraryDocumentsRelaService.saveOrUpdateBatch(goodsLibraryDocumentsRelaBeanList.stream()
|
|
|
+ .map(v -> {
|
|
|
+ GoodsLibraryDocumentsRela rela = new GoodsLibraryDocumentsRela();
|
|
|
+ BeanUtils.copyProperties(v, rela);
|
|
|
+ return rela;
|
|
|
+ })
|
|
|
+ .collect(Collectors.toList()));
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -108,6 +110,30 @@ public class GoodsLibraryLogic {
|
|
|
//规格
|
|
|
List<GoodsLibrarySpec> list = goodsLibrarySpecService.lambdaQuery().eq(GoodsLibrarySpec::getGoodsLibraryId, goodsLibraryBean.getGoodsLibraryId()).list();
|
|
|
goodsLibraryBean.setGoodsLibrarySpecList(list);
|
|
|
+
|
|
|
+ final List<GoodsLibraryDocumentsRela> relaList = goodsLibraryDocumentsRelaService.lambdaQuery()
|
|
|
+ .eq(GoodsLibraryDocumentsRela::getGoodsLibraryId, goodsLibraryId)
|
|
|
+ .list();
|
|
|
+
|
|
|
+ if (CollectionUtil.isNotEmpty(relaList)) {
|
|
|
+ List<GoodsLibraryDocumentsRelaBean> relaBeanList = new ArrayList<>();
|
|
|
+ final List<CommonFile> commonFileList = commonMapper.findCommonFileById(relaList.stream()
|
|
|
+ .map(GoodsLibraryDocumentsRela::getCommonFileId)
|
|
|
+ .collect(Collectors.toList()));
|
|
|
+
|
|
|
+ final Map<String, CommonFile> fileMap = commonFileList.stream().collect(Collectors.toMap(CommonFile::getId, Function.identity()));
|
|
|
+
|
|
|
+ for (GoodsLibraryDocumentsRela rela : relaList) {
|
|
|
+ GoodsLibraryDocumentsRelaBean relaBean = new GoodsLibraryDocumentsRelaBean();
|
|
|
+ BeanUtils.copyProperties(rela, relaBean);
|
|
|
+ final CommonFile commonFile = fileMap.get(rela.getCommonFileId());
|
|
|
+ relaBean.setFileName(commonFile.getName());
|
|
|
+ relaBean.setUrl(commonFile.getUrl());
|
|
|
+ relaBeanList.add(relaBean);
|
|
|
+ }
|
|
|
+ goodsLibraryBean.setGoodsLibraryDocumentsRelaList(relaBeanList);
|
|
|
+ }
|
|
|
+
|
|
|
return goodsLibraryBean;
|
|
|
}
|
|
|
|